老师,可以帮我看一下怎么改进吗?
package com.imooc.intro; import com.imooc.intro.*; public class Test { public static void main(String[] args) { Staff sta1=new Staff("张铭","S001",29,"男"); System.out.println(sta1.introduction()); Job jobA=new Job("P001","人事部经理"); System.out.println("职务:"+jobA); } } package com.imooc.intro; /** * 部门类 * @author me * */ public class Department { //成员属性:部门编号、部门名称、员工数组、员工人数 private String departmentNo; private String departmentName; private Staff[] mystaff; //无参构造方法 public Department() { } //带参构造方法 int RSstaffNum=0; int SCstaffNum=0; public Department(String departmentNo,String departmentName,Staff[] mystaff){ this.setDepartmentNo(departmentNo); this.setDepartmentName(departmentName); this.setMystaff(mystaff); } public void setDepartmentName(String departmentName) { this.departmentName=departmentName; } public String getDepartmentName() { return departmentName; } public void setDepartmentNo(String departmentNo) { this.departmentNo=departmentNo; } public String getDepartmentNo() { return departmentNo; } public Staff[] getMystaff() { if(this.mystaff==null) this.mystaff=new Staff[10]; return mystaff; } public void setMystaff(Staff[] mystaff) { this.mystaff = mystaff; } public void addstaff(Staff mystaff) { int i=0; for(i=0;i<this.getMystaff().length;i++) { if(this.getMystaff()[i]==null) { this.getMystaff()[i]=mystaff; break; } } } public void countStaffNum(Staff mystaff) { int i=0; for(i=0;i<this.getMystaff().length;i++) { if(departmentName=="人事部") { RSstaffNum=RSstaffNum+1; } else { SCstaffNum=SCstaffNum+1; } } } } package com.imooc.intro; public class Job { //成员属性:职务编号、职务名称 private String jobNo; private String jobName; //无参构造方法 public Job() { } 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) { this.setJobNo(jobNo); this.setJobName(jobName); } } package com.imooc.intro; public class Staff { //成员属性:员工姓名、工号、年龄、性别、所属部门、职务信息 private String staffName; private String staffNo; private int staffage; private String staffsex; //无参构造方法 public Staff() { } //带参构造方法 public Staff(String staffName,String staffNo,int staffage,String staffsex) { this.setStaffName(staffName); this.setStaffNo(staffNo); this.setStaffage(staffage); this.setStaffsex(staffsex); } 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) { if(this.staffage<18&&this.staffage>65) { this.staffage=18; }else { this.staffage = staffage; } } public String getStaffsex() { return staffsex; } public void setStaffsex(String staffsex) { if(this.staffsex!="男"&&this.staffsex!="女") { this.staffsex="男"; }else { this.staffsex = staffsex; } } public String introduction() { String sta="\n姓名:"+this.getStaffName()+"\n工号:"+this.getStaffNo()+"\n性别:"+this.getStaffsex()+"\n年龄:"+this.getStaffage(); return sta; } }
14
收起
正在回答
2回答
同学你好,1、根据题目要求,员工类--能够描述员工姓名、工号、年龄、性别、所属部门、职务信息。建议在员工类中添加部门与职务类的成员属性。
注意修改构造方法与get/set方法,在introduction方法中添加职务信息。
2、因为staffsex时String类型的数据,建议在判断比较时使用equals方法
3、在部门中,统计部门中的员工个数的变量,只需要设置一个就可以,而具体是市场部还是人事部,是通过部门类的对象来表示的,如果是市场部的对象,那么添加并统计的就是市场部的人数,同样如果是人事部的对象,添加并统计的就是人事部的人数。
4、在向部门添加员工时直接统计数量,例如:
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星