没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
13页
学生信息管理系统 内容如下: 1)设计Student类,该类继承于Person类。Person类有成员变量姓名、性别、年龄、身高、体重和职业等。 2)Person类重写toString方法查看实例对象的属性;有setName方法修改姓名;有setAge方法修改年龄;有setJob方法修改职业信息。 3)Student类有成员变量学号、选课科目、GPA、年级、学院等。 4)Student类重写toString方法查看实例对象的属性;有setGPA方法修改绩点、有setGrade方法修改年级、有addCourse方法为实例对象添加选的课程、有deleteCourse方法删除实例对象选的课程。 5)编写一个测试类Test,在该类中提供验证以下功能的操作菜单:可以创建任意多个Student对象、可选择对实例对象进行修改姓名操作、修改年龄操作、设置绩点操作、可对于同一学院的同学按GPA排序,并输出排序后的所有的学生信息(GPA排名)、为某个同学添加一门选课、为某个同学退掉一门选课。
资源详情
资源评论
资源推荐
一、题目
1. 学生信息管理系统
1)设计一个 Student 类,该类继承于 Person 类。Person 类有成员
变量姓名、性别、年龄、身高、体重和职业等。
2)Person 类重写 toString 方法查看实例对象的属性;有 setName
方法修改姓名;有 setAge 方法修改年龄;有 setJob 方法修改职业信
息。
3)Student 类有成员变量学号、选课科目、GPA、年级、学院等。
4)Student 类重写 toString 方法查看实例对象的属性;有 setGPA
方法修改绩点、有 setGrade 方法修改年级、有 addCourse 方法为
实例对象添加选的课程、有 deleteCourse 方法删除实例对象选的课
程。
5)编写一个测试类 Test,在该类中提供验证以下功能的操作菜单:
可以创建任意多个 Student 对象、可选择对实例对象进行修改姓名操
作、修改年龄操作、设置绩点操作、可对于同一学院的同学按 GPA 排
序,并输出排序后的所有的学生信息(GPA 排名)、为某个同学添加
一门选课、为某个同学退掉一门选课。
一、 问题分析
1.Student 作业
通 过 分 析 题 目 可 知 , 需 要 3 个 类 : Person 类 、 Student
类 、 TEST , 类 其 中 Person 和 Student 是 继 承 关 系 , Person 是 父
类,Student 是子类,Person 和 Student 主要是对基本信息储存和修
改的实现;TEXT 是测试类,也是运行的主程序,拥有功能菜单并具有良
好的人机交互能力,要能正确实现其基本功能(如录入、修改、查看个
人信息)
Person 类:需要含姓名、年龄、性别等人的基本信息,这一部分可通过
成员变量来实现,还要能够查看这些属性,并且能够有方法修改这些属
性
Student 类:需要含有学生特有的信息如学号,年纪,专业等,同样
需要能够修改和查看这些学生信息。
TEST 类:实现人机交互,菜单有录入学生信息、修改学生信息、查看
学生信息、学生课程添加和删除、退出等功能,能够满足程序要求。
二、 代码实现
1. Student 类:
(1)思路:
1) 1、首先写 Person 类,因为 Person 类是 Student 的父类,根
据成员变量的类型不同创建姓名、性别、年龄、身高、体重和职业等成
员变量,然后是重写 toString 方法,返回能够输出的信息表、最后是写
能够修改信息的方法(通过输入形参,然后通过 this.xx#=xx 来实现)
####2、Student 类,是 Person 的子类,继承了 Person 类的成员变量和
方法,所以在 Student 类中只需要定义其所特有的成员变量和方法,重
写 toString 方法,还有写能够修改学生信息的方法,但是不同的是需要
用到动态数组来记录学生选择的课程(因为无法确定课程数量,且动态
数组更方便),使用 ArrayList 函数中的 add 和 remove 方法来向动态
数组中添加或删除课程。
####3、Text 类,主函数所在类,首先是功能菜单,按照功能作用,将功
能分为 4 大部分并分别写出各自所需的方法:录入学生信息:addInfo
方法、修改学生基本信息:setInfo 方法、查看学生基本信息(按照 GPA
排序):checkInfo 方法、学生课程的添加与删除:setCourse 方法;
通过选择方法可实现各自的功能(说明:本程序通过学号来定位学生信
息,因为学号唯一)
addInfo 方法:储存新生信息要用到动态数组 ArrayList#students 的方
法然后将学生的各个信息输入来修改储存的信息,声明并实例化一个
Student 类变量,执行其构造方法,将学生信息输入这个变量中,然后
加强 for 循环判断该学号是否重复,最后用 ArrayList 的 add 函数加入动
态数组中
setInfo 方法:首先让输入学号,for 循环判断该学号是否已经被录入其
中,然后选择想要修改的变量,然后依据选择改变变量,依旧使用动态
数组来定位需要修改的学生。
checkInfo#方法:首先根据 GPA 排序,然后根据排序输出 Student 类的
toString 类,进行输出。
setCourse 方法:让 用户选择要添 加课程还是删 除课程,然后 再用
Student 类中的添加课程和删除课程方法完成。
(2)代码:
第一个 StudentAndPerson.java:
package SecondText;
剩余12页未读,继续阅读
阿拉斯加一只鱼
- 粉丝: 3
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论10