《面向对象程序课程设计》课程实践报告Word格式.docx

上传人:b****1 文档编号:14551419 上传时间:2022-10-23 格式:DOCX 页数:28 大小:309.16KB
下载 相关 举报
《面向对象程序课程设计》课程实践报告Word格式.docx_第1页
第1页 / 共28页
《面向对象程序课程设计》课程实践报告Word格式.docx_第2页
第2页 / 共28页
《面向对象程序课程设计》课程实践报告Word格式.docx_第3页
第3页 / 共28页
《面向对象程序课程设计》课程实践报告Word格式.docx_第4页
第4页 / 共28页
《面向对象程序课程设计》课程实践报告Word格式.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

《面向对象程序课程设计》课程实践报告Word格式.docx

《《面向对象程序课程设计》课程实践报告Word格式.docx》由会员分享,可在线阅读,更多相关《《面向对象程序课程设计》课程实践报告Word格式.docx(28页珍藏版)》请在冰豆网上搜索。

《面向对象程序课程设计》课程实践报告Word格式.docx

要完成好课程设计,就要对课程知识进行系统学习、复习、总结、应用,达到在实践中学习知识、掌握知识、应用知识和培养能力的目的。

①通过课程设计,进一步熟悉掌握Java语言的基本知识点。

②通过课程设计,达到系统理解、综合运用课程知识的学习目标。

③通过课程设计,学会应用Java语言程序解诀实际问题的方法。

④通过课程设计,掌握程序的局部测试、调试方法,建立程序系统调试、测试的基本概念和思想,学会较大程序的系统测试、调试方法。

通过使用java编程语言实现小型程序项目,巩固学生对java语言理论知识--面向对象、swing、2dgraphic的理解,提升代码编写、bug调试能力。

进一步培养学生对java语言的兴趣。

2.任务要求:

(1)要充分认识Java语言课程设计的重要性,认真做好各项准备工作,包括Java语言基础知识的复习工作;

(2)要结合课题,独立思考,努力钻研,勤于实践,勇于创新,遇到困难时借助搜索引擎或者同学、老师查找解决问题的方法;

(3)收集资料,自学相关知识,拓宽知识面,根据课题的基本要求,完成设计任务。

严格要求自己,树立严肃、严密、严谨的科学态度,按时、按质、按量完成。

(4)以小组为单位完成项目案例。

源代码严格遵守Java编码规范,规范命名包、类、方法等名称。

3、实践环境

(1)Windows10x64

(2)EclipseIDEforEnterpriseJavaDevelopers

(3)NavicatforMySql

(4)Myaql8.0

四、实践内容

(一)需求分析

学生成绩记录薄编程的作用是将学生成绩信息存在在数据库中,然后在程序中可以浏览、查询、修改、添加学生的信息,从而更加方便地了解学生的成绩信息,同时能够及时刷新学生成绩信息。

学生成绩记录薄可以按功能进行以下划分,如下图所示:

图1系统功能结构图

1.处理学生信息:

在主界面显示全部学生信息表格,并提供浏览、增加、修改、查询按钮及输出框。

2.增加学生信息:

在输入框输入学生信息并点击按钮加入表格信息。

3.修改学生信息:

在输入框输入学生信息并点击按钮修改表格信息。

4.查询学生信息:

在输入框输入学生信息并点击按钮查询表格信息。

(二)系统设计

1.系统总体流程图如下:

图2系统总体流程图

2.数据设计:

通过Mysql数据库及软件NavicatLite创建表record用于处理数据,创建类student用于储存学生的姓名、学号、成绩,数据类型为String和int字符串。

后续程序将数据库转换为ArrayList数组来处理数据,显示表格时转换为二维数组以表格显示。

图3数据库表格设计图

图4数据库初始数据

3.界面设计:

图5欢迎界面设计

图6操作界面设计

4.模块设计:

(1)欢迎界面模块:

通过GUI设计欢迎界面源程序AbstractMainFarme.java,其中包括欢迎语句标题、图片封面及进入主界面按钮。

(2)主界面模块:

通过GUI设计主界面源程序AbstractAdminDialog.java,其中包括数据显示,添加、修改、查询按钮及所需输入框。

(3)界面工具模块:

设计界面居中程序GUITools.java,使界面打开时居中显示。

(4)数据库模块:

连接数据库源程序JDBCUtils.java和AdminDao.java,使用SQL语句进行数据获取、增加、查询。

(5)学生实体模块:

定义publicRecord(Stringname,intnumber,intrecord),同时定义各个数据set和get方法处理学生数据,应用于程序中数据传送。

(6)管理服务模块:

通过调用数据库方法处理数据,其中包括queryAllDate()获取全部学生信息,addRecord()输入添加学生信息,updateRecord()修改学生信息,searchRecord()通过输入学号查询学生信息。

(7)界面控制模块:

分别调用各个界面模块及服务管理模块中方法控制界面按钮的程序级监听、数据的获取及嵌入显示。

其中包括queryRecord()获取全部数据嵌入表格,list2Array()二维数组转换,addRecord()获取输入数据并加载到数据库中,updateRecord()获取输入的数据更换数据库条目,searchRecord()获取输入的学号查询数据信息并显示。

(8)主程序模块:

调用控制界面模块,实现程序运行。

(三)具体实现:

1.欢迎界面模块:

packagecn.itcast.record.view;

importjava.awt.BorderLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjavax.swing.ImageIcon;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

importcn.itcast.record.tools.GUITools;

@SuppressWarnings("

serial"

publicabstractclassAbstractMainFrameextendsJFrame

{

privateJLabeltitleLabel=newJLabel(newImageIcon("

PS.jpg"

));

privateJButtonbtn=newJButton("

进入系统"

);

publicAbstractMainFrame()

{

this.init();

this.addComponent();

this.addListener();

}

privatevoidinit()

this.setTitle("

欢迎使用成绩记录程序"

this.setSize(1100,500);

GUITools.center(this);

GUITools.setTitleImage(this,"

title.png"

this.setResizable(false);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

privatevoidaddComponent()

this.add(this.titleLabel,BorderLayout.NORTH);

JPanelbtnPanel=newJPanel();

btnPanel.setLayout(null);

this.add(btnPanel);

btn.setBounds(450,15,100,40);

btnPanel.add(btn);

privatevoidaddListener()

btn.addActionListener(newActionListener(){

@Override

publicvoidactionPerformed(ActionEvente)

{

showAdminDialog();

}

});

protectedabstractvoidshowAdminDialog();

}

2.主界面模块:

importjava.awt.Frame;

importjavax.swing.JDialog;

importjavax.swing.JScrollPane;

importjavax.swing.JTable;

importjavax.swing.JTextField;

importcn.itcast.record.domain.Record;

publicabstractclassAbstractAdminDialogextendsJDialog

privateJLabeltableLabel=newJLabel("

成绩管理程序"

privateJScrollPanetablePane=newJScrollPane();

protectedJTabletable=newJTable();

privateJLabelnameLabel=newJLabel("

姓名"

privateJLabelnumberLabel=newJLabel("

学号"

privateJLabelrecordLabel=newJLabel("

成绩"

privateJLabelinstructionLavel1=newJLabel("

使用说明"

privateJLabelinstructionLavel2=newJLabel("

使用修改功能时,将所要修改的学生的学号输入文本框中"

privateJLabelinstructionLavel3=newJLabel("

再将修改的信息输入到姓名文本框及成绩文本框内"

protectedJTextFieldaddNameText=newJTextField(6);

protectedJTextFieldaddNumberText=newJTextField(6);

protectedJTextFieldaddRecordText=newJTextField(6);

privateJButtonaddBtn=newJButton("

添加成绩"

protectedJTextFieldupdateNameText=newJTextField(6);

protectedJTextFieldupdateNumberText=newJTextField(6);

protectedJTextFieldupdateRecordText=newJTextField(6);

privateJButtonupdateBtn=newJButton("

修改成绩"

protectedJT

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1