Java语言程序设计课程设计题目及要求(软件101-2)
更新时间:2024-05-18 21:16:01 阅读量: 综合文库 文档下载
Java语言程序设计课程设计要求及题目
学期:2014-2015-01 专业:网络13级
课程设计选题要求:
1、每个学生从下面16个题目中选择3个题目来进行课程设计,3个题目的选择遵循下面的原则:第一个题目从1-6号题目中选,第二个题目从7-12号题目中选,第三个题目从13-20号题目(使用文件)中选。
2、选好题目后,每个学生根据题目的内容填写任务书(课程设计说明书中),其中“已知技术参数和设计要求”项,直接将题目中“要求”部分复制过去。 注意:一个题目对应一份任务书!
3、请认真阅读课程设计指导书(附件1),提前做好课程设计准备。
1复数类
要求:
1)该系统主要处理复数的相关信息。
2)完成以下的操作:初始化复数、求其绝对值、复数的加、减、乘、除、乘方、自加、自减等。
提示:
1)建立数据类、复数类 2)数据、复数信息的初始化 3)复数信息的输出 4)求复数的绝对值
5)实现复数的加、减、乘、除、乘方、自加、自减等运算
2字符串类
要求:
1)该系统主要处理字符串的相关信息。
2)完成以下的操作:初始化字符串、获得字符串长度、在字符串中查找一个字符、在字符串中查找另一个字符串、字符串连接、字符串比较等。
提示:
1)建立字符串类 2)字符串信息的初始化 3)字符串信息的输出 4)获得字符串长度 5)在字符串中查找一个字符 6)在字符串中查找另外一个字符串 7)比较字符串
3日期类
要求:
1)该系统主要处理时间的相关信息。
2) 完成以下的操作:日期的设置、显示、实现在某一个日期上(月、日、
年)加减一个天数的功能、计算两个日期间隔天数
提示:
1)建立日期类
2) 日期类的初始化
3) 按某个固定格式(如:yyyy-MM-dd)一次性的设置某个日期对象 4) 以固定格式显示某个日期 5) 在日期上加一天
6)在日期上减一天
7)输入两个日期,然后输出日期的间隔天数
4进制转换
要求:
从键盘输入一个十六进制数,将其转化为十进制输出。如果输入的不是一个有效的十六进制数数字则抛出异常。 提示:
(1)可以先编写一个方法将一个十六进制的数字转化为十进制对应的数值,方法在数字非法时产生异常。
(2)定义一个异常类,用来描述“非十六进制数”这一特殊异常。 (3)定义一个方法将十六进制数字转换为十进制数字,方法内利用了switch语句来处理各种情形,其他情形,则抛出异常。利用if语句可缩短程序长度,如何修改程序。
(4)在main方法中对一个十六进制的符号串逐位字符进行处理,拼接转化为十进制,要检测可能出现的异常。
5 猜数字游戏
要求:
从控制台获取玩家输入的数字(0到99之间的整数),如果不是数字,则抛出异常。 提示:
首先定义了一个counter变量来记录玩家猜测的次数,并直接初始化为0。在打印一行游戏提示以后,便开始一个do-while语句。
在do-while语句中,首先用异常处理语句获取玩家的输入,如果玩家输入不合法,提示以后用continue语句从头重新执行循环语句,等待玩家的输入。从而,guess变量一定包含一个合法的整数。之后要对玩家的输入进行判断。如果玩家的猜测太大或者太小,都做出提示。接着把计数器增加1,表示玩家做过一次猜测。最后便是do-while语句的判断:当玩家猜测的数字和随机产生的答案不同,则再次进入循环,否则便结束循环
6 实现栈操作
栈是一种数据结构,只能从一端进行存储和访问。常规操作有压入栈和弹出
栈。特性:先进先出,LIFO
要求:必须用数组和集合类两种方式实现!!
栈(Stack)是限制仅在表的一端进行插入和删除运算的线性表。
(1)通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)。 (2)当表中没有元素时称为空栈。
(3)栈为后进先出(Last In First Out)的线性表,简称为LIFO表。 栈的修改是按后进先出的原则进行。每次删除(退栈)的总是当前栈中\最新\的元素,即最后插入(进栈)的元素,而最先插入的是被放在栈的底部,要到最后才能删除。
提示: 1、 2、
设计栈类和测试类
设计栈的方法:清空,判断栈满,入栈,出栈。
7学生成绩管理系统
要求:
1)该系统主要处理学生的成绩信息。
2)学生信息主要包括:学号、班级、姓名、科目1、科目2、科目3等内容。 3)完成以下的操作:实现成绩信息的添加、修改、删除和查询,可以计算每个学生的平均成绩及各科目的平均成绩,将学生信息保存为文件。 提示:
1)建立学生类 2)学生信息的初始化
3)学生信息的添加、修改、删除、查找 4)学生信息的输出
5)对学生信息按学号、成绩排序 6)计算一门课的平均分和总分
8项目管理系统
要求:
1)该系统主要处理项目的相关信息。
2) 项目信息主要包括:项目编号、项目名称、等级、负责人等内容。 3) 完成以下的操作:项目信息的录入、修改、删除和查询 提示:
1)建立项目类 2)项目信息的初始化
3)项目信息的添加、修改、删除、查找 4)项目信息的输出
5)在项目信息中按项目编号、项目名称、项目等级排序
9客户管理系统
要求:
1)该系统主要处理客户的相关信息。
2)客户信息主要包括:客户编号、客户名称、所在地区、联系方式等内容。 3)地区信息主要包括:编号、名称等内容。
4)完成以下的操作:客户信息、地区信息的录入、修改、删除和查询。 提示:
1)建立客户类、地区类 2)客户、地区信息的初始化
3)客户、地区信息的添加、修改、删除、查找 4)客户、地区信息的输出 5)将客户信息保存为文件
10用户管理系统
要求:
1)该系统主要处理用户的相关信息。
2)用户信息主要包括:编号、用户名、用户类型、联系方式等内容。 3)用户类型信息主要包括:编号、类型名称、权限等级等内容
4)完成以下的操作:用户信息、用户类型信息的录入、修改、删除和查询。 提示:
1)建立用户类、用户类型类 2)用户、用户类型信息的初始化
3)用户、用户类型信息的添加、修改、删除、查找 4)用户、用户类型信息的输出 5)对用户信息按权限排序 6)将用户信息保存为文件
11商品管理系统
要求:
1) 该系统主要处理商场中的商品信息。
2) 商品信息主要包括:商品编号、商品类型、商品类型、价格、供应商等内容。
3) 供应商信息主要包括:供应商编号、供应商名称、联系电话等内容。 4) 完成以下的操作:实现商品信息、商品类型、供应商信息的添加、修改、删除和查询。 提示:
1)建立商品类、商品类型类、供应商类 2)商品、商品类型、供应商信息的初始化 3)商品信息的添加、修改、删除、查找 4)供应商信息的添加、修改、删除、查找
5)商品信息、供应商信息的输出
12班级通讯录
要求:
1) 该系统主要处理通讯录的相关信息。
2) 通讯录信息主要包括:姓名、班级、手机、家庭电话、电子邮件、通讯录地址、邮编等内容。
3) 完成以下的操作:实现通讯录信息的添加、修改、删除和查询。 提示:
1)建立班级类、通讯录类 2)班级、通讯录信息的初始化
3)班级、通讯录信息的添加、修改、删除、查找 4)班级、通讯录信息的输出 5)将通讯录信息保存为文件
13图书管理系统
要求:
1) 该系统主要处理图书馆中的图书信息以及供应商向图书馆供应图书的信息。
2) 图书信息主要包括:图书编号、图书名称、图书类型、作者、出版社、库存等内容。
3)供应商信息主要包括:供应商编号、供应商名称、供书类型、地址、电话等内容
4)其中,图书类型和供书类型是都是书籍类型(如:信息类、建筑类、化学类、生物类等)
5) 完成以下的操作:实现图书信息的添加、修改、删除和查询;图书供应商信息的添加、修改、删除和查询;书籍类型的添加、修改、删除和查询;
供应商向图书馆供应图书的情况查询、统计。 提示:
1)建立书籍类型类、图书类、供应商类 2)书籍类型、图书信息、供应商的初始化
3)书籍类型、图书信息、供应商的添加、修改、删除、查找 4)对图书信息按编号、书名排序 5)将图书信息和供应商信息保存为文件
14课外兴趣小组管理
要求:
1) 该系统主要处理课外兴趣小组的相关信息。
2) 学生信息主要包括:学号、姓名、性别、兴趣爱好等内容。 3) 兴趣主要包括:兴趣编号、兴趣类型等内容。
4) 完成以下的操作:实现学生兴趣信息的添加、修改、删除和查询。 提示:
1)建立学生类、兴趣类、兴趣类型类 2)学生、兴趣、兴趣类型信息的初始化
3)学生、兴趣、兴趣类型信息的添加、修改、删除、查找 4)学生兴趣信息的输出 5)将学生兴趣信息保存为文件
15人事管理系统
要求:
1) 该系统主要处理商场中的人事信息。
2) 人事信息主要包括:员工编号、所在部门、职务、薪资等级、薪资、联系方式等内容。
3) 部门信息主要包括:部门编号、部门名称等内容。
4) 完成以下的操作:实现员工信息、部门信息的添加、修改、删除和查询。 提示:
1)建立员工类、职务类、部门类 2)员工、职务、部门信息的初始化 3)员工信息的添加、修改、删除、查找 4)部门、职务信息的添加、修改、删除、查找 5)员工信息、部门信息的输出
16选课管理系统
要求:
1)该系统主要处理学生的选课信息。
2) 学生信息主要包括:学号、姓名、电话、选课等内容。
3) 课程信息主要包括:课程编号、课程名称、学分、任课教师等内容。 4) 完成以下的操作:学生信息、课程信息的录入、修改、删除和查询。 提示:
1)建立学校类、学生类、课程类、选课类 2)学校、学生、课程、选课信息的初始化
3)学校、学生、课程、选课信息的添加、修改、删除、查找 4)学校、学生、课程、选课信息的输出 5)对选课信息按学号、课程编号排序
17毕业生选题管理系统
要求:
1) 该系统主要处理毕业生的选题信息。
2) 学生信息主要包括:学号、姓名、电话、选题等内容。 3) 课题信息主要包括:课题编号、课题名称、指导教师等内容。 4) 完成以下的操作:学生信息、课题信息的录入、修改、删除和查询。
提示:
1)建立学校类、学生类、课题类、选题类 2)学校、学生、课题、选题信息的初始化
3)学校、学生、课题、选题信息的添加、修改、删除、查找 4)学校、学生、课题、选题信息的输出 5)对选题信息按学号、课题编号排序
18教师评学管理系统
要求:
1) 该系统主要处理教师评学信息。
2) 班级信息主要包括:班级编号、班级名称、所在院系、评学成绩等内容。 3) 教师信息主要包括:编号、姓名、电话等内容。
4) 完成以下的操作:班级信息、教师信息、评学信息的录入、修改、删除和查询。 提示:
1)建立学校类、教师类、班级类、评学类 2)学校、教师、班级、评学信息的初始化
3)学校、教师、班级、评学信息的添加、修改、删除、查找 4)学校、教师、班级、评学信息的输出 5)对评学信息按评学成绩排序
19学生评教管理系统
要求:
1)该系统主要处理学生评教的相关信息。
2)学生信息主要包括:学号、姓名、性别、联系方式等内容。
3)教师信息主要包括:教工编号、教师名称、任教课程、评教成绩等内容。 4)完成以下的操作:学生信息、教师信息、评教信息的录入、修改、删除
和查询。 提示:
1)建立学校类、教师类、学生类、评教类 2)学校、教师、学生、评教信息的初始化
3)学校、教师、学生、评教信息的添加、修改、删除、查找 4)学校、教师、学生、评教信息的输出 5)对评教信息按评学成绩排序
20 银行管理系统
要求:
建立一个银行管理系统,账户类型分别是储蓄账户和信用账户,具有存取款方法,并有异常判断功能。 提示:
1、 创建账户类,有存取款方法
2、 创建储蓄账户(SavingAccount)和信用账户(CreditAccount) 3、 自定义异常类
4、 使用Map集合方式管理Account对象
5、 使用IO输入输出流把账户信息存储在磁盘文件中。
(项目具体要求:
项目名称:Bank Account Management System 银行账户管理系统 简称BAM 项目描述:这是一个银行账户管理系统,用户可以操作自己的银行账户.
项目实施方式:这是一个同步练习,随着CoreJava课程的深入,这个项目将趋于完整,学生的任务是随着知识点的深入,完成每一个进阶的项目要求.
练习1:(面向对象基础语法)
创建entity包,编写一个账户类(Account),属性: id:账户号码 长整数 password:账户密码 name:真实姓名
personId:身份证号码 字符串类型 balance:账户余额
方法:
deposit: 存款方法,参数是double型的金额 withdraw:取款方法,参数是double型的金额
构造方法:
有参和无参,有参构造方法用于设置必要的属性
练习2:(封装)
将Account类作成完全封装
练习3:(继承,多态)
银行的客户分为两类,储蓄账户(SavingAccount)和信用账户(CreditAccount),区别在于储蓄账户不允许透支,而信用账户可以透支10000元
在entity包中为这两种用户编写相关的类
同时要求创建biz包,编写Bank类,属性: 1.当前所有的账户对象的集合,存放在数组中 2.当前账户数量
方法:
1.用户开户,需要的参数:id,密码,密码确认,姓名,身份证号码,账户类型,返回新创建的Account对象的账号,提示:用s1.equals(s2) 可以比较s1,s2两个字符串的值是否相等.账户类型是一个整数,为0的时候表示储蓄账户,为1的时候表示信用账户 2.用户登录,参数:id,密码 返回登录账户的账号 3.用户存款,参数:id,存款数额,返回void 4.用户取款,参数:id,取款数额,返回void
5.查询余额,参数:id,返回该账户的余额 double
用户会通过调用Bank对象以上的方法来操作自己的账户,请分析各个方法需要的参数
练习4:(语言高级特性,三个修饰符)
1.修改Account类,银行用户的账号(id)是自动生成的,初始值为100000,第一个开户的用户id为100001,第二个为100002,依此类推.
提示:构造对象的时候采用static属性为id赋值
2.对于Account类,有两个方法,存款方法和取款方法,请修改这两个方法. 存款方法改为不允许子类修改
取款方法根据不同的子类而不同,因此,改为抽象方法,在两个子类中分别实现
练习5:(接口)
将Bank类的方法抽象出来,定义一个接口 练习6:(Exception)
为BAM添加几个异常类,放在exception包中
BalanceNotEnoughException :用于取钱的时候余额不足的情况(包括账户余额超过透支额的
情况)
RegisterException:用于开户异常的情况,例如密码两次输入不一致等情况 LoginException:用户登录异常的情况,例如id错误,密码错误 并请妥善处理这些异常
练习7:(集合)
改写Bank类,采用Map集合的方式来管理多个Account对象
练习8:(I/O)
修改Bank类,账户信息会采用对象序列化的方式存放在文件中.每个账户对应一个文件.当账户信息改变的时候,会随时更新文件
创建dao包,定义数据访问对象接口AccountDao,并给出这个接口的实现类AccountFileDao,负责对文件的访问,包括存放账户,提取账户等方法,在Bank类中,会通过FileDAO对象来访问文件
注意:如果已有的账户对象会存在文件中,那么为新的账户对象分配id的做法也应相应的改变,过去的用static属性的做法不再合适,应该改为,把下一个可用的id存放在一个文件中,每创建一个新对象的时候都会读取这个文件,获得新对象的id,并且修改文件中的id,使其加1.这个工作可以放在Account类的构造方法中。)
3、 附件1 指导书
《面向对象程序设计课程设计》指导书
课程编码:JS0057
课程名称:面向对象程序设计课程设计 Object-oriented Programming Project
适用专业:软件工程 先修课程:C语言程序设计
总 学 时:1周(实验学时:10 授课学时:0 上机学时:) 一、课程设计的目的和要求
1、通过面向对象程序设计课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,要求学生能够对现实生活中许多具体的事物抽象出来,并掌握继承与派生,基类、虚函数和多态性的概念。 2、通过这次课程设计掌握面向对象的编程思想,为后续课程打下基础。 3、培养学生实际操作能力和团结协作能力,为以后的工作打下坚实的基础。 二、课程设计内容
运用Java语言描述学校类、教师类、学生类、评教类,每一个类应包含数据成员和成员函数。设计基类和派生类,并运用多态性和虚函数的知识。注重面向对象程序设计理论知识的理解与实际的动手编程能力,要求学生设计具有继承与派生以及多态性的类,理解面向对象程序设计的核心的概念。
不得从网上下载或者抄袭别人的资料,一经发现,课程设计不及格。 三、课程设计进度表 时间为一周,大致划分如下:
第一天 布置任务及分组,总体需求分析,编写相关文档,设计说明,查找资料 第二天 基类、各派生类设计及代码实现,各模块的编程设计 第三天 各模块的调试与修改,系统组装,程序总调试,修改 第四天~第五天 撰写课程设计说明书,课程设计检查与答辩 四、课程设计步骤与方法
1、需求分析:为提出的问题找出解决的办法和思路。用自顶向下的方法创建主程序和子程序,控制对象间的相互作用。
2、根据需求,设计系统功能模块,并设计相应的类结构。 3、根据基本思路,确定输入和输出,设计程序的算法。
4、确定用到的所有类的描述和定义,并设计测试程序来对类进行测试。 5、在计算机上编译程序,检验程序的可运行性。 6、编写面向对象程序设计课程设计说明书。 课程设计说明书要求: 1)封面
2)课程设计任务书 3)目录 4)正文 5)参考文献
6)附程序源码(电子版) 五、课程设计答辩
完成课程设计后,组织学生进行答辩,讲解设计思路和编程方法。 六、教材与参考书目
[1] 刘宝林 《Java程序设计与案例》 北京:高等教育出版社 [2] 耿祥义 《java大学实用教程》 北京:电子工业出版社
[3] 马俊,范玫 《Java语言面向对象程序设计》 北京: 机械工业出版社
正在阅读:
Java语言程序设计课程设计题目及要求(软件101-2)05-18
电气自动化毕业论文 (2)08-11
生物可溶性耐火纤维03-05
认认真真学习 踏踏实实做人 勤勤恳恳干事10-28
基于单片机的智能交通灯控制系统设计与实现08-24
选择性涂覆喷胶机技术参数06-03
儿童心理学试卷及答案06-24
防护林改经济林 申请书09-30
九年级语文下册古诗词理解性默写06-07
9月党课学习思想汇报最新范文09-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 程序设计
- 题目
- 语言
- 课程
- 要求
- 设计
- 软件
- Java
- 101