员工管理系统

来源:互联网 发布:天刀怎么保存捏脸数据 编辑:程序博客网 时间:2024/04/29 13:54

                                                         员工管理系统

父类

package com.ho.yg;


public class Employee {
String ID;
String name;
String position;
int  holiday;
double salary;

//计算工资的方法
public double sumSalary(){
System.out.println(salary);
return 0;
}
@Override
public String toString() {
return "编号:" + ID + ", 姓名:" + name + ", 职务:" + position + ", 请假天数:" + holiday + ", 工资:"
+ salary ;
}
   



public String getID() {
return ID;
}


public void setID(String iD) {
ID = iD;
}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getPosition() {
return position;
}


public void setPosition(String position) {
this.position = position;
}


public int getHoliday() {
return holiday;
}


public void setHoliday(int holiday) {
this.holiday = holiday;
}


public double getSalary() {
return salary;
}


public void setSalary(double salary) {
this.salary = salary;
}



}

子类 普通员工

package com.ho.yg;


public class CommonEmployee extends Employee {
//计算工资的方法
public double sumSalary(){
   double sum=salary*1.6+200-(salary*1.6+200)/30*holiday;
    return sum;
}  
   
}

子类 经理

package com.ho.yg;


public class Manager extends Employee {
           //计算工资的方法
public double sumSalary(){
   double sum=salary*1.7+500-(salary*1.7+500)/30*holiday;
   return sum;
}  
}


子类 董事长

package com.ho.yg;


public class Director extends Employee {
//计算工资的方法
public double sumSalary(){
   double sum=salary*1.38+5000-(salary*1.38+5000)/30*holiday;
   return sum;
}  
}

测试类

package com.ho.yg;


import java.util.Scanner;


public class TextEMD {
static int index=-1;
static Scanner sc = new Scanner(System.in);
static Employee[] em = new Employee[100];//定义静态数组 可全局使用
     public static void main(String[] args) {
    while(true){
System.out.println("|-------------|");
System.out.println("|----1 增加----|");
System.out.println("|----2 删除----|");
System.out.println("|----3 修改----|");
System.out.println("|----4 查询----|");
System.out.println("|----0 退出----|");
System.out.println("|-------------|");
System.out.println("请选择业务");
int select = sc.nextInt();
//选择
switch(select){
case 1:
add();break;
case 2:
delete();break;
case 3:
update();break;
case 4:
find();break;
case 0:
System.out.println("已退出系统");
System.exit(0); //无条件退出
}
     }
}
     // 增加 
private static void add() {
index++;   //Employee[]  数组下标
Employee r = new Employee();
System.out.println("请输入员工编号:");
r.setID(sc.next());
System.out.println("请输入员工姓名:");
r.setName(sc.next());
System.out.println("请输入员工职务(普通员工,经理,董事长):");
String aaa=sc.next();
r.setPosition(aaa);
  int s=1;
//选择不同的 职务
switch(aaa){
 case "普通员工":
 Employee r1 = new CommonEmployee();//创建对象
 System.out.println("请输入员工请假天数:");
 r1.setHoliday(sc.nextInt()); //把请假天数放入对象的对应属性
 System.out.println("请输入员工基本工资:");
 r1.setSalary(sc.nextDouble());//把工资放入对象的对应属性
 r.setSalary(r1.sumSalary());//调用r1中的方法  得出结果 放出r的
                             //相应的属性
     break;
 case "经理":
 Employee r2 = new Manager();
 System.out.println("请输入员工请假天数:");
 r2.setHoliday(sc.nextInt());
 System.out.println("请输入员工基本工资:");
 r2.setSalary(sc.nextDouble());
 r.setSalary(r2.sumSalary());
     break;
 case "董事长":
 Employee r3 = new Director();
 System.out.println("请输入员工请假天数:");
 r3.setHoliday(sc.nextInt());
 System.out.println("请输入员工基本工资:");
 r3.setSalary(sc.nextDouble());
 r.setSalary(r3.sumSalary());
     break;
 default:
 System.out.println("输入错误");
 s=2;
}
   if(s==1){
em[index] = r; //把对象r(所有属性)放入对象数组的 一个位置
System.out.println(r);
System.out.println("添加成功");
   }

}
private static void delete() {
System.out.println("————————删除员工——————————");
if(index==-1){
System.out.println("员工为空");
return;
   }
System.out.println("请输入员工姓名");
String na = sc.next();
int dd=2;
for(int i=0;i<=index;i++){
if(em[i].getName().equals(na)){//对比输入值与对手数组各个元素的名称属性是否匹配
  System.out.println(em[i]);
  System.out.println("是否确定删除1是2否");
int aa= sc.nextInt();

if(aa==1){
//删除
for(int j=i;j<=index;j++){
 em[j]=em[j+1];
 }
System.out.println("删除成功");
index--;
   }
      dd=1;
    }
if(dd==2){
    System.out.println("无信息");

    }
    }


   if(index==-1){
System.out.println("员工为空");
  
   }
}
private static void update() {
System.out.println("————————修改员工——————————");
//先判断是否为空 若为空 可直接返回
if(index==-1){
System.out.println("系统为空");
return;
}
System.out.println("请输入要修改的姓名");
String na1 = sc.next();
int a1=1; //如果
for(int i=0;i<=index;i++){
if(em[i].getName().equals(na1)){
Employee r = new Employee();
System.out.println("请输入员工编号:");
r.setID(sc.next());
System.out.println("请输入员工姓名:");
r.setName(sc.next());
System.out.println("请输入员工职务(普通员工,经理,董事长):");
String aaa=sc.next();
r.setPosition(aaa);
  int s=1;
switch(aaa){
 case "普通员工":
 Employee r1 = new CommonEmployee();
 System.out.println("请输入员工请假天数:");
 r1.setHoliday(sc.nextInt());
 System.out.println("请输入员工基本工资:");
 r1.setSalary(sc.nextDouble());
 r.setSalary(r1.sumSalary());
       
     break;
 case "经理":
 Employee r2 = new Manager();
 System.out.println("请输入员工请假天数:");
 r2.setHoliday(sc.nextInt());
 System.out.println("请输入员工基本工资:");
 r2.setSalary(sc.nextDouble());
 r.setSalary(r2.sumSalary());
     break;
 case "董事长":
 Employee r3 = new Director();
 System.out.println("请输入员工请假天数:");
 r3.setHoliday(sc.nextInt());
 System.out.println("请输入员工基本工资:");
 r3.setSalary(sc.nextDouble());
 r.setSalary(r3.sumSalary());
     break;
 default:
 System.out.println("输入错误");
  s=2;
}
   if(s==1){
em[index] = r;
System.out.println(r);
System.out.println("添加成功");
}
   a1=2;
  }
if(a1==1)
System.out.println("无信息");
if(index==-1)
System.out.println("系统为空");
}
}
private static void find() {
System.out.println("请输入员工姓名");
String na1 = sc.next();
for(int i=0;i<=index;i++){
if(em[i].getName().equals(na1)){
System.out.println(em[i]);
}
  }
}

}

  


仅用于学习交流



0 0
原创粉丝点击