3-8作业问题
package com.cn.Model;
/**
* Created by Administrator on 2017/10/17.
*/
public class employee {
// 类型描述:能够描述员工姓名、工号、年龄、性别、所属部门、职务信息
private String elyName;
private String elyNo;
private int elyAge;
private String elySex;
private Department elyDepartment;
private Duty elyDuty;
//无参构造
public employee(){}
//部分属性赋值
public employee(String elyName,String elyNo,int elyAge,String elySex) {
this.setElyName(elyName);
this.setElyNo(elyNo);
this.setElyAge(elyAge);
this.setElySex(elySex);
}
// 给全部成员属性赋值
public employee(String elyName,String elyNo,int elyAge,String elySex,Department elyDepartment,Duty elyDuty){
this.setElyName(elyName);
this.setElyNo(elyNo);
this.setElyAge(elyAge);
this.setElySex(elySex);
this.setElyDepartment(elyDepartment);
this.setElyDuty(elyDuty);
}
//gett和sett方法
public String getElyName() {
return elyName;
}
public void setElyName(String elyName) {
this.elyName = elyName;
}
public String getElyNo() {
return elyNo;
}
public void setElyNo(String elyNo) {
this.elyNo = elyNo;
}
public int getElyAge() {
return elyAge;
}
//设定方法限定年龄只能是18--65之间,反之则设置默认为18岁
public void setElyAge(int elyAge) {
if(elyAge < 18 || elyAge>65 )
elyAge = 18;
this.elyAge = elyAge;
}
public String getElySex() {
return elySex;
}
//设定方法限定性别只能是“男”或者“女”,反之则设置默认为"男"
public void setElySex(String elySex) {
if(elySex.equals("男"))
System.out.println("性别为男");
else
System.out.println("性别为女");
this.elySex = elySex;
}
public Department getElyDepartment() {
return elyDepartment;
}
public void setElyDepartment(Department elyDepartment) {
this.elyDepartment = elyDepartment;
}
public Duty getElyDuty() {
return elyDuty;
}
public void setElyDuty(Duty elyDuty) {
this.elyDuty = elyDuty;
}
// 设定方法,实现员工自我介绍信息,将员工信息作为字符串返回
public String introduce(Department elyDepartment,Duty elyDuty){
String str = "员工姓名:"+this.getElyName()+"\n员工编号:"+this.getElyNo()+"\n员工年龄:"+this.getElyAge()
+"\n员工性别:"+this.getElySex()+"\n员工部门:"+elyDepartment.getDptName()+"\n员工职务:"+elyDuty.getDuytName();
return str;
}
}
public class TestOS {
public static void main(String[] args) {
//测试部门类
Department dt = new Department("s1", "人事部");
Department dt1 = new Department("s2", "市场部");
System.out.println("=========================================");
//测试职务类
Duty du = new Duty("s3", "经理");
Duty du1 = new Duty("s4", "职员");
Duty du2 = new Duty("s4", "助理");
//测试员工类
employee ely = new employee("张铭","S001",29,"男");
System.out.println(ely.introduce(dt,du));
}
程序输出一开始就会验证输出这样的结果

不知道为什么
正在回答 回答被采纳积分+1
public void setElySex(String elySex) {
if(elySex.equals("男"))
System.out.println("性别为男");
else
System.out.println("性别为女");
this.elySex = elySex;
}你在代码中进行了打印,而这个方法,在构造方法中进行了调用,所以,当执行
employee ely = new employee("张铭","S001",29,"男");的时候就会输出相关语句
另:同学请注意,即便你进行了性别信息打印,但是关于性别验证也是错误的,请考虑一下,如果setElySex方法传入的elySex值为“我也不知道自己什么性别”,你的程序会产生什么结果呢~~
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星