利用java设计一个简单的学校人事管理系统,管理教师和学生信息。实现教师与学生基本信息的添加、删除、修改、查询。其中编号、姓名、性别、出生日期为共有的,教师包括部门、职称、工资;学生包括高考分数、专业field、班级等。

时间: 2023-10-27 18:04:53 浏览: 65
好的,以下是一个简单的学校人事管理系统的Java代码: ```java import java.util.ArrayList; import java.util.Scanner; class Person { private String id; private String name; private String gender; private String birthday; public Person(String id, String name, String gender, String birthday) { this.id = id; this.name = name; this.gender = gender; this.birthday = birthday; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public String getBirthday() { return birthday; } public void setBirthday(String birthday) { this.birthday = birthday; } } class Teacher extends Person { private String department; private String title; private double salary; public Teacher(String id, String name, String gender, String birthday, String department, String title, double salary) { super(id, name, gender, birthday); this.department = department; this.title = title; this.salary = salary; } public String getDepartment() { return department; } public void setDepartment(String department) { this.department = department; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } } class Student extends Person { private int score; private String field; private String className; public Student(String id, String name, String gender, String birthday, int score, String field, String className) { super(id, name, gender, birthday); this.score = score; this.field = field; this.className = className; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } public String getField() { return field; } public void setField(String field) { this.field = field; } public String getClassName() { return className; } public void setClassName(String className) { this.className = className; } } class School { private ArrayList<Teacher> teachers; private ArrayList<Student> students; public School() { teachers = new ArrayList<>(); students = new ArrayList<>(); } public void addTeacher(Teacher teacher) { teachers.add(teacher); } public void removeTeacher(String id) { for (Teacher teacher : teachers) { if (teacher.getId().equals(id)) { teachers.remove(teacher); break; } } } public void updateTeacher(Teacher teacher) { for (Teacher t : teachers) { if (t.getId().equals(teacher.getId())) { t.setName(teacher.getName()); t.setGender(teacher.getGender()); t.setBirthday(teacher.getBirthday()); t.setDepartment(teacher.getDepartment()); t.setTitle(teacher.getTitle()); t.setSalary(teacher.getSalary()); break; } } } public Teacher searchTeacher(String id) { for (Teacher teacher : teachers) { if (teacher.getId().equals(id)) { return teacher; } } return null; } public void addStudent(Student student) { students.add(student); } public void removeStudent(String id) { for (Student student : students) { if (student.getId().equals(id)) { students.remove(student); break; } } } public void updateStudent(Student student) { for (Student s : students) { if (s.getId().equals(student.getId())) { s.setName(student.getName()); s.setGender(student.getGender()); s.setBirthday(student.getBirthday()); s.setScore(student.getScore()); s.setField(student.getField()); s.setClassName(student.getClassName()); break; } } } public Student searchStudent(String id) { for (Student student : students) { if (student.getId().equals(id)) { return student; } } return null; } public void printTeachers() { System.out.println("教师列表:"); for (Teacher teacher : teachers) { System.out.println("编号:" + teacher.getId() + " 姓名:" + teacher.getName() + " 性别:" + teacher.getGender() + " 生日:" + teacher.getBirthday() + " 部门:" + teacher.getDepartment() + " 职称:" + teacher.getTitle() + " 工资:" + teacher.getSalary()); } } public void printStudents() { System.out.println("学生列表:"); for (Student student : students) { System.out.println("编号:" + student.getId() + " 姓名:" + student.getName() + " 性别:" + student.getGender() + " 生日:" + student.getBirthday() + " 高考分数:" + student.getScore() + " 专业:" + student.getField() + " 班级:" + student.getClassName()); } } } public class Main { public static void main(String[] args) { School school = new School(); Scanner scanner = new Scanner(System.in); while (true) { System.out.println("请选择操作:"); System.out.println("1. 添加教师"); System.out.println("2. 删除教师"); System.out.println("3. 修改教师信息"); System.out.println("4. 查询教师信息"); System.out.println("5. 添加学生"); System.out.println("6. 删除学生"); System.out.println("7. 修改学生信息"); System.out.println("8. 查询学生信息"); System.out.println("9. 查看教师列表"); System.out.println("10. 查看学生列表"); System.out.println("0. 退出"); int choice = scanner.nextInt(); if (choice == 0) { break; } else if (choice == 1) { System.out.println("请输入教师信息:"); System.out.print("编号:"); String id = scanner.next(); System.out.print("姓名:"); String name = scanner.next(); System.out.print("性别:"); String gender = scanner.next(); System.out.print("生日:"); String birthday = scanner.next(); System.out.print("部门:"); String department = scanner.next(); System.out.print("职称:"); String title = scanner.next(); System.out.print("工资:"); double salary = scanner.nextDouble(); Teacher teacher = new Teacher(id, name, gender, birthday, department, title, salary); school.addTeacher(teacher); System.out.println("教师添加成功!"); } else if (choice == 2) { System.out.println("请输入要删除的教师编号:"); String id = scanner.next(); school.removeTeacher(id); System.out.println("教师删除成功!"); } else if (choice == 3) { System.out.println("请输入要修改的教师信息:"); System.out.print("编号:"); String id = scanner.next(); System.out.print("姓名:"); String name = scanner.next(); System.out.print("性别:"); String gender = scanner.next(); System.out.print("生日:"); String birthday = scanner.next(); System.out.print("部门:"); String department = scanner.next(); System.out.print("职称:"); String title = scanner.next(); System.out.print("工资:"); double salary = scanner.nextDouble(); Teacher teacher = new Teacher(id, name, gender, birthday, department, title, salary); school.updateTeacher(teacher); System.out.println("教师信息修改成功!"); } else if (choice == 4) { System.out.println("请输入要查询的教师编号:"); String id = scanner.next(); Teacher teacher = school.searchTeacher(id); if (teacher != null) { System.out.println("编号:" + teacher.getId() + " 姓名:" + teacher.getName() + " 性别:" + teacher.getGender() + " 生日:" + teacher.getBirthday() + " 部门:" + teacher.getDepartment() + " 职称:" + teacher.getTitle() + " 工资:" + teacher.getSalary()); } else { System.out.println("未找到该教师!"); } } else if (choice == 5) { System.out.println("请输入学生信息:"); System.out.print("编号:"); String id = scanner.next(); System.out.print("姓名:"); String name = scanner.next(); System.out.print("性别:"); String gender = scanner.next(); System.out.print("生日:"); String birthday = scanner.next(); System.out.print("高考分数:"); int score = scanner.nextInt(); System.out.print("专业:"); String field = scanner.next(); System.out.print("班级:"); String className = scanner.next(); Student student = new Student(id, name, gender, birthday, score, field, className); school.addStudent(student); System.out.println("学生添加成功!"); } else if (choice == 6) { System.out.println("请输入要删除的学生编号:"); String id = scanner.next(); school.removeStudent(id); System.out.println("学生删除成功!"); } else if (choice == 7) { System.out.println("请输入要修改的学生信息:"); System.out.print("编号:"); String id = scanner.next(); System.out.print("姓名:"); String name = scanner.next(); System.out.print("性别:"); String gender = scanner.next(); System.out.print("生日:"); String birthday = scanner.next(); System.out.print("高考分数:"); int score = scanner.nextInt(); System.out.print("专业:"); String field = scanner.next(); System.out.print("班级:"); String className = scanner.next(); Student student = new Student(id, name, gender, birthday, score, field, className); school.updateStudent(student); System.out.println("学生信息修改成功!"); } else if (choice == 8) { System.out.println("请输入要查询的学生编号:"); String id = scanner.next(); Student student = school.searchStudent(id); if (student != null) { System.out.println("编号:" + student.getId() + " 姓名:" + student.getName() + " 性别:" + student.getGender() + " 生日:" + student.getBirthday() + " 高考分数:" + student.getScore() + " 专业:" + student.getField() + " 班级:" + student.getClassName()); } else { System.out.println("未找到该学生!"); } } else if (choice == 9) { school.printTeachers(); } else if (choice == 10) { school.printStudents(); } else { System.out.println("输入错误,请重新输入!"); } } } } ``` 该程序使用了面向对象的思想,定义了Person、Teacher、Student和School四个类。其中Person类是所有人员的父类,包含了编号、姓名、性别、出生日期等共有的属性。Teacher类和Student类继承了Person类,分别添加了部门、职称、工资和高考分数、专业、班级等独有的属性。School类用于管理教师和学生的信息,包括添加、删除、修改、查询和打印教师和学生信息的功能。Main类作为程序的入口,提供了一个简单的命令行菜单,让用户选择相应的操作。 当用户选择添加、删除、修改、查询教师或学生信息时,程序会提示用户输入相应的信息。输入完成后,程序会根据用户的选择调用相应的方法,对教师或学生信息进行相应的操作。 当用户选择查看教师或学生列表时,程序会遍历教师或学生列表,并打印出每个教师或学生的信息。 该程序只是一个简单的示例,实际的学校人事管理系统需要更加完善和复杂,例如要考虑数据的持久化、数据的安全性、多用户的并发访问等问题。

最新推荐

recommend-type

java实现简单的学生信息管理系统代码实例

主要介绍了java实现简单的学生信息管理系统,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

基于Java+sql教师信息管理系统课设报告

基于Java+sql教师信息管理系统课设报告,教师信息管理系统主要用于实现用户名的登陆,退出,教师信息的添加,查找, 删除,修改等功能。本系统的开发需要实现以下功能模块:对系统的图形界面化进行 操作,对sql...
recommend-type

Java学生信息管理系统设计(数据库版)

主要为大家详细介绍了数据库版的Java学生信息管理系统设计,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

java(swing)+ mysql实现学生信息管理系统

主要分享了java mysql实现学生信息管理系统的源码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

java面向对象之学生信息管理系统

主要为大家详细介绍了java面向对象之学生信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz

REALTEK 8188FTV 8188eus 8188etv linux驱动程序稳定版本, 支持AP,STA 以及AP+STA 共存模式。 稳定支持linux4.0以上内核。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

:YOLOv1目标检测算法:实时目标检测的先驱,开启计算机视觉新篇章

![:YOLOv1目标检测算法:实时目标检测的先驱,开启计算机视觉新篇章](https://img-blog.csdnimg.cn/img_convert/69b98e1a619b1bb3c59cf98f4e397cd2.png) # 1. 目标检测算法概述 目标检测算法是一种计算机视觉技术,用于识别和定位图像或视频中的对象。它在各种应用中至关重要,例如自动驾驶、视频监控和医疗诊断。 目标检测算法通常分为两类:两阶段算法和单阶段算法。两阶段算法,如 R-CNN 和 Fast R-CNN,首先生成候选区域,然后对每个区域进行分类和边界框回归。单阶段算法,如 YOLO 和 SSD,一次性执行检
recommend-type

ActionContext.getContext().get()代码含义

ActionContext.getContext().get() 是从当前请求的上下文对象中获取指定的属性值的代码。在ActionContext.getContext()方法的返回值上,调用get()方法可以获取当前请求中指定属性的值。 具体来说,ActionContext是Struts2框架中的一个类,它封装了当前请求的上下文信息。在这个上下文对象中,可以存储一些请求相关的属性值,比如请求参数、会话信息、请求头、应用程序上下文等等。调用ActionContext.getContext()方法可以获取当前请求的上下文对象,而调用get()方法可以获取指定属性的值。 例如,可以使用 Acti
recommend-type

c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf

校园超市商品信息管理系统课程设计旨在帮助学生深入理解程序设计的基础知识,同时锻炼他们的实际操作能力。通过设计和实现一个校园超市商品信息管理系统,学生掌握了如何利用计算机科学与技术知识解决实际问题的能力。在课程设计过程中,学生需要对超市商品和销售员的关系进行有效管理,使系统功能更全面、实用,从而提高用户体验和便利性。 学生在课程设计过程中展现了积极的学习态度和纪律,没有缺勤情况,演示过程流畅且作品具有很强的使用价值。设计报告完整详细,展现了对问题的深入思考和解决能力。在答辩环节中,学生能够自信地回答问题,展示出扎实的专业知识和逻辑思维能力。教师对学生的表现予以肯定,认为学生在课程设计中表现出色,值得称赞。 整个课程设计过程包括平时成绩、报告成绩和演示与答辩成绩三个部分,其中平时表现占比20%,报告成绩占比40%,演示与答辩成绩占比40%。通过这三个部分的综合评定,最终为学生总成绩提供参考。总评分以百分制计算,全面评估学生在课程设计中的各项表现,最终为学生提供综合评价和反馈意见。 通过校园超市商品信息管理系统课程设计,学生不仅提升了对程序设计基础知识的理解与应用能力,同时也增强了团队协作和沟通能力。这一过程旨在培养学生综合运用技术解决问题的能力,为其未来的专业发展打下坚实基础。学生在进行校园超市商品信息管理系统课程设计过程中,不仅获得了理论知识的提升,同时也锻炼了实践能力和创新思维,为其未来的职业发展奠定了坚实基础。 校园超市商品信息管理系统课程设计的目的在于促进学生对程序设计基础知识的深入理解与掌握,同时培养学生解决实际问题的能力。通过对系统功能和用户需求的全面考量,学生设计了一个实用、高效的校园超市商品信息管理系统,为用户提供了更便捷、更高效的管理和使用体验。 综上所述,校园超市商品信息管理系统课程设计是一项旨在提升学生综合能力和实践技能的重要教学活动。通过此次设计,学生不仅深化了对程序设计基础知识的理解,还培养了解决实际问题的能力和团队合作精神。这一过程将为学生未来的专业发展提供坚实基础,使其在实际工作中能够胜任更多挑战。