java实现学生教师管理系统
本文实例为大家分享了java实现学生教师管理系统的具体代码,供大家参考,具体内容如下
类设计
1.1父类抽象类
- 成员属性:id(编号)name(姓名)sex(性别)birthday(生日)age(年龄-由生日计算得出)
- 构造方法:无参构造全参构造成员方法:toString()
- 抽象方法:getType():由各子类实现,返回各自的"类型"字符串。getWork():由各子类实现,返回各自的"工作"字符串。
1.2子类Student
- 构造方法无参构造全参构造(super调用父类全参构造)
- 重写抽象方法重写getType()重写getWork()
1.3子类Teacher
- 构造方法无参构造全参构造(super调用父类全参构造)
- 重写抽象方法重写getType()重写getWork()
1.4工具类
- 全局变量学员ID值(添加学员信息时,编号由此ID加1生成)
- 教师ID值(添加教师信息时,编号由此ID加1生成)
- 全局方法根据生日计算年龄的方法打印一个Person对象的方法;
- 打印一个ArrayList集合的方法
1.5启动类
定义启动类:MainApp启动程序
程序设计
2.1父类Person类
/*
成员属性有id名字性别年龄生日和年龄
成员方法有描述自己的职位和工作
*/
publicabstractclassPerson{
privateintid;
privateStringname;
privateStringgender;
privateStringbirthday;
privateintage;
publicPerson(){
}
publicPerson(intid,Stringname,Stringgender,Stringbirthday){
this.id=id;
this.name=name;
this.gender=gender;
this.birthday=birthday;
}
publicabstractStringgetType();
publicabstractStringgetWork();
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetGender(){
returngender;
}
publicvoidsetGender(Stringgender){
this.gender=gender;
}
publicStringgetBirthday(){
returnbirthday;
}
publicvoidsetBirthday(Stringbirthday){
this.birthday=birthday;
}
//getAge需要接收的数据需要通过Utils的birthday方法进行计算
publicintgetAge(){
age=Utils.birthday(this.getBirthday());
returnage;
}
publicvoidsetAge(intage){
this.age=age;
}
@Override
publicStringtoString(){
returnid+"\t\t"+
name+"\t\t"+
gender+"\t\t"+
birthday+"\t"+
this.getAge()+"\t\t"+
"我是一名"+getType()+"我的工作是"+getWork();
}
}
2.2学生类
/*
重写父类方法
*/
publicclassStuentextendsPerson{
publicStuent(){
}
publicStuent(intid,Stringname,Stringgender,Stringbirthday){
super(id,name,gender,birthday);
}
@Override
publicStringgetType(){
return"学习Java";
}
@Override
publicStringgetWork(){
return"学生";
}
}
2.3老师类
/*
重写父类方法
*/
publicclassTeacherextendsPerson{
publicTeacher(){
}
publicTeacher(intid,Stringname,Stringgender,Stringbirthday){
super(id,name,gender,birthday);
}
@Override
publicStringgetType(){
return"教师";
}
@Override
publicStringgetWork(){
return"讲课";
}
}
2.4工具类
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.ArrayList;
importjava.util.Calendar;
importjava.util.Date;
/*
学员ID值(添加学员信息时,编号由此ID加1生成)
教师ID值(添加教师信息时,编号由此ID加1生成)
全局方法
根据生日计算年龄的方法打印一个Person对象的方法;
打印一个ArrayList集合的方法;
*/
publicclassUtils{
publicstaticintstuID;
publicstaticintteaID;
publicstaticintbirthday(Stringbirthday){
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");
DatebirthdayDate=null;
try{birthdayDate=sdf.parse(birthday);
}catch(ParseExceptione){return-1;
//输入的日期不符合模式,返回-1
}
//创建生日日历对象
Calendarc=Calendar.getInstance();
//求出生日时间传给日历对象
c.setTime(birthdayDate);
//求出生日年份
c.get(Calendar.YEAR);
//创建档当前时间的日历对象
Calendarc1=Calendar.getInstance();
c1.get(Calendar.MONTH);
if(c1.before(c)){
return-1;
}
//判断月份大小
if(c.get(Calendar.MONTH)>c1.get(Calendar.MONTH)){
returnc1.get(Calendar.YEAR)-c.get(Calendar.YEAR)-1;
}elseif(c.get(Calendar.MONTH)c1.get(Calendar.DAY_OF_MONTH)){
returnc1.get(Calendar.YEAR)-c.get(Calendar.YEAR)-1;
}elseif(c.get(Calendar.DAY_OF_MONTH)personlist){
System.out.println("***************************************************");
System.out.println("编号\t\t姓名\t\t性别\t\t生日\t\t\t年龄\t\t描述");
for(inti=0;i
2.5启动类
importjava.util.ArrayList;
importjava.util.Scanner;
publicclassMainApp{
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
//学生集合
ArrayListstuents=newArrayList<>();
//老师集合
ArrayListteachers=newArrayList<>();
while(true){
System.out.println("1.学员信息管理2.教师信息管理3.退出");
inta=sc.nextInt();
switch(a){
case1:
studentManage(stuents,sc);
break;
case2:
teacherManage(teachers,sc);
break;
case3:
System.out.println("谢谢使用");
System.exit(0);
default:
System.out.println("输入有误");
break;
}
}
}
//教师二级列表
privatestaticvoidteacherManage(ArrayListteachers,Scannersc){
while(true){
System.out.println("教师管理系统");
System.out.println("1.添加教师信息2.修改教师信息3.删除教师信息4.查询教师5.返回");
inta=sc.nextInt();
switch(a){
case1:
addTeacher(teachers,sc);
break;
case2:
updateTeacher(teachers,sc);
break;
case3:
delTeacher(teachers,sc);
break;
case4:
findTeacher(teachers);
break;
case5:
return;
}
}
}
//教师添加
privatestaticvoidaddTeacher(ArrayListteachers,Scannersc){
System.out.println("输入姓名");
Stringname=sc.next();
System.out.println("输入性别");
Stringgender=sc.next();
System.out.println("输入生日");
Stringbirthday=sc.next();
teachers.add(newTeacher(++Utils.teaID,name,gender,birthday));
System.out.println("添加成功");
}
//修改教师信息
privatestaticvoidupdateTeacher(ArrayListteachers,Scannersc){
System.out.println("请输入要改教师的id");
intupdateid=sc.nextInt();
for(inti=0;iteachers,Scannersc){
System.out.println("请输入要删除学教师的的id");
intdelid=sc.nextInt();
for(inti=0;iteachers){
if(teachers.size()==0){
System.out.println("查询不到数据");
}else{
Utils.PersonList(teachers);
}
}
//学生二级列表
privatestaticvoidstudentManage(ArrayListstuents,Scannersc){
while(true){
System.out.println("学生管理系统");
System.out.println("1.添加学员2.修改学员3.删除学员4.查询学员5.返回");
inta=sc.nextInt();
switch(a){
case1:
addStudent(stuents,sc);
break;
case2:
updateStudent(stuents,sc);
break;
case3:
delStudent(stuents,sc);
break;
case4:
findStudent(stuents);
break;
case5:
return;
}
}
}
//添加学生信息
privatestaticvoidaddStudent(ArrayListstuents,Scannersc){
System.out.println("输入姓名");
Stringname=sc.next();
System.out.println("输入性别");
Stringgender=sc.next();
System.out.println("输入生日");
Stringbirthday=sc.next();
stuents.add(newStuent(++Utils.stuID,name,gender,birthday));
System.out.println("添加成功");
}
//修改学生信息
privatestaticvoidupdateStudent(ArrayListstuents,Scannersc){
System.out.println("请输入要改学生的id");
intupdateid=sc.nextInt();
for(inti=0;istuents,Scannersc){
System.out.println("请输入要删除学生的的学号");
intdelid=sc.nextInt();
for(inti=0;istuents){
System.out.println("查询结果");
if(stuents.size()==0){
System.out.println("没有数据");
}else{
Utils.PersonList(stuents);
}
}
}
更多学习资料请关注专题《管理系统开发》。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。