java 学校管理系统
要完成一个学校的管理系统,需要管理学生,老师,工作人员,行政人员,同时包括一个管理员,要求:
1、分析根据自己的理解,分析如何设计这几个类,要用继承;
2、用方法覆盖实现对功能的扩展,例如,可以说话功能的复写。
3、用一个类来管理这五类人员,就是用管理类对这几类人员进行添加,删除,修改
4、写一个测试类测试正确性
//person 类
package school;
public class person {
private String sexy;
private String name;
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSexy() {
return sexy;
}
public void setSexy(String sexy) {
this.sexy = sexy;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void speak() {
System.out.println("哒哒哒哒哒哒");
}
}
//student 类
package school;
public class student extends person {
private int score;
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
//teacher 类
package school;
public class teacher extends person{
private int wage;
public int getWage() {
return wage;
}
public void setWage(int wage) {
this.wage = wage;
}
}
//admin 类
package school;
public class admin extends person{
private String position;
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
}
//worker 类
package school;
public class worker extends person {
private String work;
public String getWork() {
return work;
}
public void setWork(String work) {
this.work = work;
}
}
//manner 类
package school;
public class manner extends person{
private int level;
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
}
//管理类核心代码
package school;
import java.util.Scanner;
public class Boss extends person{
static private int stsum=0;
static private int tesum=0;
static private int adsum=0;
static private int wosum=0;
static private int masum=0;
static private student stu[]=new student[100];
static private teacher tea[]=new teacher[100];
static private admin ad[]=new admin[100];
static private worker wok[]=new worker[100];
static private manner man[]=new manner[100];
private Scanner sc=new Scanner(System.in);
public void deal(int x) {
switch(x) {
case 1 :{ //添加
System.out.println("1:学生 2:老师 3:行政人员 4:工作人员 5:管理者");
int y=sc.nextInt();
switch(y) {
case 1:{
//添加学生
System.out.println("输入学生 :年龄,性别,姓名,成绩");
int age=sc.nextInt();
String sexy=sc.next();
String name=sc.next();
int score=sc.nextInt();
stu[stsum]=new student();
stu[stsum].setAge(age);;
stu[stsum].setName(name);
stu[stsum].setSexy(sexy);
stu[stsum].setScore(score);
stsum++;
break;
}
case 2:{
//添加老师
System.out.println("输入老师 :年龄,性别,姓名,工资");
int age=sc.nextInt();
String sexy=sc.next();
String name=sc.next();
int wage=sc.nextInt();
tea[tesum]=new teacher();
tea[tesum].setAge(age);
tea[tesum].setName(name);
tea[tesum].setSexy(sexy);
tea[tesum].setWage(wage);
tesum++;
break;
}
case 3:{
//添加行政人员
System.out.println("输入行政人员 :年龄,性别,姓名,职位");
int age=sc.nextInt();
String sexy=sc.next();
String name=sc.next();
String position=sc.next();
ad[adsum]=new admin();
ad[adsum].setAge(age);
ad[adsum].setName(name);
ad[adsum].setPosition(position);
ad[adsum].setSexy(sexy);
adsum++;
break;
}
case 4:{
//添加工作人员
System.out.println("输入工作人员 :年龄,性别,姓名,工作");
int age=sc.nextInt();
String sexy=sc.next();
String name=sc.next();
String work=sc.next();
wok[wosum]=new worker();
wok[wosum].setAge(age);
wok[wosum].setName(name);
wok[wosum].setSexy(sexy);
wok[wosum].setWork(work);
wosum++;
break;
}
case 5:{
System.out.println("输入管理者 :年龄,性别,姓名,等级");
int age=sc.nextInt();
String sexy=sc.next();
String name=sc.next();
int level =sc.nextInt();
man[masum]=new manner();
man[masum].setAge(age);
man[masum].setLevel(level);
man[masum].setName(name);
man[masum].setSexy(sexy);
masum++;
break;
}
}
break;
}
case 2:{
//删除
System.out.println("1:学生 2:老师 3:行政人员 4:工作人员 5:管理者");
int y=sc.nextInt();
switch(y) {
case 1:{
//删除学生
System.out.println("输入要删除学生 :姓名");
String name=sc.next();
int j=0;
for(int i=0;i<stsum;i++) {
if(name.equals(stu[i].getName())) {
j=i;
break;
}
}
for(int i=j;i<stsum;i++) {
stu[i]=stu[i+1];
}
stsum--;
break;
}
case 2:{
//删除老师
System.out.println("输入要删除老师 :姓名");
String name=sc.next();
int j=0;
for(int i=0;i<tesum;i++) {
if(name.equals(tea[i].getName())) {
j=i;
break;
}
}
for(int i=j;i<tesum;i++) {
tea[i]=tea[i+1];
}
tesum--;
break;
}
case 3:{
//删除行政人员
System.out.println("输入要删除行政人员 :姓名");
String name=sc.next();
int j=0;
for(int i=0;i<adsum;i++) {
if(name.equals(ad[i].getName())) {
j=i;
break;
}
}
for(int i=j;i<adsum;i++) {
ad[i]=ad[i+1];
}
adsum--;
break;
}
case 4:{
//删除工作人员
System.out.println("输入要删除工作人员 :姓名");
String name=sc.next();
int j=0;
for(int i=0;i<wosum;i++) {
if(name.equals(wok[i].getName())) {
j=i;
break;
}
}
for(int i=j;i<wosum;i++) {
wok[i]=wok[i+1];
}
wosum--;
break;
}
case 5:{
//删除管理者
System.out.println("输入要删除管理者 :姓名");
String name=sc.next();
int j=0;
for(int i=0;i<masum;i++) {
if(name.equals(man[i].getName()) ) {
j=i;
break;
}
}
for(int i=j;i<masum;i++) {
man[i]=man[i+1];
}
masum--;
break;
}
}
break;
}
case 3:{
//修改
System.out.println("1:学生 2:老师 3:行政人员 4:工作人员 5:管理者");
int y=sc.nextInt();
switch(y) {
case 1:{
//修改学生
System.out.println("输入要修改的学生的名字");
String cname =sc.next();
System.out.println("输入修改后学生 :年龄,姓名,性别,成绩");
int age =sc.nextInt();
String name=sc.next();
String sexy=sc.next();
int score =sc.nextInt();
for(int i=0;i<stsum;i++) {
if(stu[i].getName().equals(cname)) {
stu[i].setAge(age);
stu[i].setName(name);
stu[i].setScore(score);
stu[i].setSexy(sexy);
break;
}
}
break;
}
case 2:{
//修改老师
System.out.println("输入要修改的老师的名字");
String cname =sc.next();
System.out.println("输入修改后老师 :年龄,姓名,性别,工资");
int age =sc.nextInt();
String name=sc.next();
String sexy=sc.next();
int wage =sc.nextInt();
for(int i=0;i<tesum;i++) {
if(cname.equals(tea[i].getName()) ) {
tea[i].setAge(age);
tea[i].setName(name);
tea[i].setSexy(sexy);
tea[i].setWage(wage);
break;
}
}
break;
}
case 3:{
//修改行政人员
System.out.println("输入要修改的行政人员的名字");
String cname =sc.next();
System.out.println("输入修改后行政人员 :年龄,姓名,性别,职位");
int age =sc.nextInt();
String name=sc.next();
String sexy=sc.next();
String position =sc.next();
for(int i=0;i<adsum;i++) {
if(cname.equals( ad[i].getName()) ) {
ad[i].setAge(age);
ad[i].setName(name);
ad[i].setPosition(position);
ad[i].setSexy(sexy);
break;
}
}
break;
}
case 4:{
//修改工作人员
System.out.println("输入要修改的工作人员的名字");
String cname =sc.next();
System.out.println("输入修改后工作人员 :年龄,姓名,性别,工作");
int age =sc.nextInt();
String name=sc.next();
String sexy=sc.next();
String work =sc.next();
for(int i=0;i<wosum;i++) {
if(cname.equals( wok[i].getName()) ) {
wok[i].setAge(age);
wok[i].setName(name);
wok[i].setSexy(sexy);
wok[i].setWork(work);
break;
}
}
break;
}
case 5:{
System.out.println("输入要修改的管理者的名字");
String cname =sc.next();
System.out.println("输入修改后管理者 :年龄,姓名,性别,等级");
int age =sc.nextInt();
String name=sc.next();
String sexy=sc.next();
int level=sc.nextInt();
for(int i=0;i<masum;i++) {
if(cname.equals( man[i].getName()) ) {
man[i].setAge(age);
man[i].setLevel(level);
man[i].setName(name);
man[i].setSexy(sexy);
break;
}
}
break;
}
}
break;
}
}
}
public int getStsum() {
return stsum;
}
public int getTesum() {
return tesum;
}
public int getAdsum() {
return adsum;
}
public int getWosum() {
return wosum;
}
public int getMasum() {
return masum;
}
public student[] getStu() {
return stu;
}
public teacher[] getTea() {
return tea;
}
public admin[] getAd() {
return ad;
}
public worker[] getWok() {
return wok;
}
public manner[] getMan() {
return man;
}
public Scanner getSc() {
return sc;
}
public void speak() {
System.out.println("咕咕咕咕咕咕");
}
}
//测试类
package school;
import java.util.Scanner;
public class text {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
System.out.println("1:添加 2:删除 3:修改 0:结束");
int x=sc.nextInt();
while(x!=0) {
Boss dd=new Boss();
dd.deal(x);
dd.speak();
int stsum=dd.getStsum();
int tesum=dd.getTesum();
int adsum=dd.getAdsum();
int wosum=dd.getWosum();
int masum=dd.getMasum();
student stu[]=dd.getStu();
teacher tea[]=dd.getTea();
admin ad[]=dd.getAd();
worker wok[]=dd.getWok();
manner man[]=dd.getMan();
System.out.println("学生人数:"+stsum);
System.out.println("教师人数:"+tesum);
System.out.println("行政人员人数:"+adsum);
System.out.println("工作人员人数:"+wosum);
System.out.println("管理者人数:"+masum);
for(int i=0;i<stsum;i++) {
System.out.print(stu[i].getAge()+" ");
System.out.print(stu[i].getName()+" ");
System.out.print(stu[i].getScore()+" ");
System.out.println(stu[i].getSexy());
}
for(int i=0;i<tesum;i++) {
System.out.print(tea[i].getAge()+" ");
System.out.print(tea[i].getName()+" ");
System.out.print(tea[i].getWage()+" ");
System.out.println(tea[i].getSexy());
}
for(int i=0;i<adsum;i++) {
System.out.print(ad[i].getAge()+" ");
System.out.print(ad[i].getName()+" ");
System.out.print(ad[i].getPosition()+" ");
System.out.println(ad[i].getSexy());
}
for(int i=0;i<wosum;i++) {
System.out.print(wok[i].getAge()+" ");
System.out.print(wok[i].getName()+" ");
System.out.print(wok[i].getWork()+" ");
System.out.println(wok[i].getSexy());
}
for(int i=0;i<masum;i++) {
System.out.print(man[i].getAge()+" ");
System.out.print(man[i].getName()+" ");
System.out.print(man[i].getLevel()+" ");
System.out.println(man[i].getSexy());
}
System.out.println("1:添加 2:删除 3:修改 0:结束");
x=sc.nextInt();
}
}
}