1.测试类
public class WorkTest {
public static void main(String[] args) {
Department dt = new Department();
Department dt1 = new Department("A001", "人事部");
Department dt2 = new Department("A002", "市场部");
Job job1 = new Job("A", "经理");
Job job2 = new Job("A", "助理");
Job job3 = new Job("A", "职员");
Job job4 = new Job("B", "职员");
Job job5 = new Job("B", "经理");
Job job6 = new Job("B", "职员");
Staff sf1 = new Staff("张铭", "S001", "男", 29,dt1,job1);
Staff sf2 = new Staff("李艾爱", "S002", "女", 21,dt1,job2);
Staff sf3 = new Staff("孙超", "S004", "男", 29,dt1,job3);
Staff sf4 = new Staff("张美美", "S005", "女", 26,dt2,job4);
Staff sf5 = new Staff("蓝迪", "S006", "男", 37,dt2,job5);
Staff sf6 = new Staff("米莉", "S007", "女", 24,dt2,job6);
System.out.println(sf1.introduction());
System.out.println(sf2.introduction());
System.out.println(sf3.introduction());
System.out.println(sf4.introduction());
System.out.println(sf5.introduction());
System.out.println(sf6.introduction());
//测试每个部门分别有多少学生
dt1.addStaff(sf1);
dt1.addStaff(sf2);
dt1.addStaff(sf3);
dt2.addStaff(sf4);
dt2.addStaff(sf5);
// dt2.addStaff(sf6);
//总人数为
System.out.println("市场部总公有"+dt2.getStaffNum()+"名员工");
System.out.println("人事部总公有"+dt1.getStaffNum()+"名员工");
}
}
2.职工类
public class Staff {
private String staffName;
private String staffNo;
private int staffAge;
private String staffSex;
private Department staffDepartment;
private Job staffJob;
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getStaffNo() {
return staffNo;
}
public void setStaffNo(String staffNo) {
this.staffNo = staffNo;
}
public int getStaffAge() {
return staffAge;
}
public void setStaffAge(int staffAge) {
this.staffAge = staffAge;
}
public String getStaffSex() {
return staffSex;
}
public void setStaffSex(String staffSex) {
this.staffSex = staffSex;
}
public Department getStaffDepartment() {
if(this.staffDepartment==null)
this.staffDepartment=new Department();
return staffDepartment;
}
public void setStaffDepartment(Department staffDepartment) {
this.staffDepartment = staffDepartment;
}
public Job getStaffJob() {
return staffJob;
}
public void setStaffJob(Job staffJob) {
this.staffJob = staffJob;
}
public Staff() {
super();
}
public Staff(String staffName, String staffNo, String staffSex, int staffAge) {
this.setStaffName(staffName);
this.setStaffNo(staffNo);
this.setStaffSex(staffSex);
this.setStaffAge(staffAge);
}
public Staff(String staffName, String staffNo, String staffSex, int staffAge, Department staffDepartment,
Job staffJob) {
this.setStaffName(staffName);
this.setStaffNo(staffNo);
this.setStaffSex(staffSex);
this.setStaffAge(staffAge);
this.setStaffDepartment(staffDepartment);
this.setStaffJob(staffJob);
}
public String introduction() {
String str = "\n员工姓名:" + this.getStaffName() + "\n员工工号:" + this.getStaffNo() + "\n员工年龄:" + this.getStaffAge()
+ "\n员工性别:" + this.getStaffSex() + "\n职务:"+this.getStaffDepartment().getDepartmentName()+this.getStaffJob().getJobName();
return str;
}
}
3.部门类
public class Department {
private String departmentNo;
private String departmentName;
private Staff[] staff=new Staff[200];
private int staffNum;
public int getStaffNum() {
return staffNum;
}
public void setStaffNum(int staffNum) {
this.staffNum = staffNum;
}
//数组的返回值
public Staff[] getStaff() {
return staff;
}
//设置数组的值
public void setStaff(Staff[] staff) {
this.staff = staff;
}
public String getDepartmentNo() {
return departmentNo;
}
public void setDepartmentNo(String departmentNo) {
this.departmentNo = departmentNo;
}
public String getDepartmentName() {
return departmentName;
}
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
public Department(String departmentNo, String departmentName) {
this.setDepartmentNo(departmentNo);
this.setDepartmentName(departmentName);
}
public Department() {
}
public void addStaff(Staff sta) {
/**
* 1、将员工保存到数组中 2、将员工个数保存到staffNum
*/
for(int i=0;i<this.getStaff().length;i++) {
if(this.getStaff()[i]==null) {
//sta.setStaffDepartment(this);
this.getStaff()[i]=sta;
this.staffNum=i+1;
return;
}
}
}
}
4.职务类
public class Job {
private String jobNo;
private String jobName;
public String getJobNo() {
return jobNo;
}
public void setJobNo(String jobNo) {
this.jobNo = jobNo;
}
public String getJobName() {
return jobName;
}
public void setJobName(String jobName) {
this.jobName = jobName;
}
public Job(String jobNo, String jobName) {
super();
this.jobNo = jobNo;
this.jobName = jobName;
}
public Job() {
super();
}
}
5.运行效果图