- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序设计作业.doc
密号研究生请勿填写
山东理工大学研究生课程考试
答 题 纸
题号 分 数 阅卷人 1 2 3 4 5 6 7 8 9 10 11 12 总分
姓 名 任珈漪
学 号 14505050396
专 业 计算机技术
考 试 科 目 Java语言程序设计
考 试 时 间 2014年12月29日
注意:此半页研究生勿用学生管理系统-阶段项目2
系统分析
本文目的是,设计一个学生管理系统,要求登录后可以实现对学员的增加和查询的功能,并提供良好的操作界面。
经过分析系统的需求,抽象出管理员实体、学生实体,从管理员实体中抽象出来的数据有用户名和密码,从学生实体中抽象出来的数据有学生Id,学生姓名,出生日期,电话,地址。
本文首先经过分析与查阅资料,确定了基本的设计方案。然后分成四个模块进行逐步设计。主要有创建学生实体、创建管理员实体、设计工具类和界面设计四个部分。
第一部分里主要确定学生类和构造方法,以及学生对象的五个属性。
第二部分里主要设计管理员类和学生业务类,并将HashMap对象保存到文件,然后实现从文件中读取HashMap对象,在这一部分里同时实现了学生对象的写入、删除、修改等功能设计。
第三部分里主要设计工具类,为第四部分界面的实现做准备。
第四部分里主要创建登陆界面、主界面、添加界面和显示所有界面的功能。实现由代码到输出显示的过程。
整体上来讲,第一和第三部分是为第二和第四部分做准备的。第一部分创建好类,方法,对象之后在第二部分才能对对象进行各种操作,比如写入、删除,第三部分创建好工具类之后在第四部分才能运用工具类实现界面的显示和信息的输出。
本文的学生管理系统涉及到的技术点有:
I/O流
HashMap的使用
异常处理
Scanner的使用
二、模块设计
2.1创建学生实体
1、首先,按要求将学生Student类,打包在com.handson.stumanager.domain包中。
2、设计学生Student类来存储相应信息。设计一个缺省的和带参数的public Student() 构造函数来获取数据,同时将对象属性“学生编号”,“学生姓名”,“学生生日”,“学生电话”,“电话住址”写成私有private,不打破面向对象的封装特性。
3、设计public setter/getter方法。
4、为学生类添加toString方法。将字段连成一个字符串然后返回。
2.2创建管理员实体
1、将管理员Admin类打包在com.handson.stumanager.domain包中。设计一个登录操作类,命名为LoginBO。
2、设计checkUser行为,接收管理员对象,用if语句验证用户登陆是否成功。如果用户名是admin密码是123456,则返回true否则false。
3、根据I/O流知识,导入调用方法。
4、设计学生操作类。命名为StudentBO。
5、设计一个addStudent行为,接收学生对象,用于把一个已经构建好的学生对象添加到HashMap中。以学生ID为键。如果用户输入的学生ID在studentMap中已经包含,就调用Tool类显示“已经存在”,如果不包含则接收学生对象。这个过程用if,else语句来实现。
6、设计一个delStudent行为,用于删除一个学生对象。用学生ID来判断studentMap中是否包含想要删除的学生ID,若包含则remove,调用Tool工具类来显示“删除成功”,若不包含则显示“指定的学号不存在”。这个过程用if,else语句来实现。
7、设计一个saveStudentMapToFile行为,用于把HashMap对象保存到文件中。并进行异常处理。
8、设计一个displayAllStudent的行为,用于查询HashMap中所有的学生对象。
9、设计一个readStudentMapFromFile行为,用于从文件中读取HashMap对象。并进行异常处理。
2.3设计工具类
1、将工具类Tools,打包在com.handson.stumanager.tools包中。运用Scanner接受输入值。
2、把方法设计成static的,且把之前程序中的打印输出全都换成当前类的方法调用。即Tools类提供重载
文档评论(0)