java初学者求救java问题。老手们来探讨下这个题啊·我有不解!
题目:一个公司有3种员工:一种是只拿底薪的;一种是没底薪按销售额提成的,一种是有底薪并且按销售额提成的员工。通过建立5个类
(测试类,员工类,只拿底薪员工类,没底薪按销售额提成员工类,有底薪按销售额提成员工类)来实现这个程序。
要求员工有:姓名,工号,销售额,提成率,基本工资等属性定义成私有属性,通过共有的SET()和GET()方法对成员变量进行访问。每个类
编写一个同名的打印方法,一个计算当月员工的同名方法。最后通过测试类,新建几个员工实例,通过多态方法答应出员工的相关信息。
我觉得就是”编写一个同名的打印方法,一个计算当月员工的同名方法。最后通过测试类,新建几个员工实例,通过多态方法答应出员工的相关信息。“
这点比较难啊· 就是再建立个类也就是成员函数来打印结果啊·怎么弄·
下面是我写的部分,也死大体吧就是有个类不是很通1
public class Employees{
private String name;
private String number;/*String是引用类型所以要首字母大写*/
public void setName(String n){
name=n;
}
public String getName(){
return name;
}
public void setNumber(String num){
number=num;
}
public String getNumber(){
return number;
}
}
public class OnlyEmployees extends Employees{
private int basic;
public void setBasic(int s){
basic=s;
}
public int getBasic(){
return basic;
}
}/*子类为只拿底薪的员工*/
public class NoEmployees extends Employees{
private int sum;
private double float ticheng;
public void setSum(int su){
sum=su;
}
public int getSum(){
return sum;
}
public void setTicheng(double float tich){
ticheng=tich;
}
public double float getTicheng(){
return ticheng;
}
}/*子类为没底薪按销售额提成的员工*/
public class AllEmployees extends Employees{
private int basic;
private int sum;
private double float ticheng;
public void setBasic(int s){
basic=s;
}
public int getBasic(){
return basic;
}
public void setSum(int su){
sum=su;
}
public int getSum(){
return sum;
}
public void setTicheng(double float tich){
ticheng=tich;
}
public double float getTicheng(){
return ticheng;
}
}/*子类为有底薪按销售额提成的员工*/
一定要帮忙啊·········能详细注释下吧·谢谢·
------解决方案--------------------
一个员工类,定义总薪水接口(getSalary)
两个接口,一个拿底新的,一个拿提成的,分别定义相关接口。
一个拿底新的员工类,实现拿底薪的接口
一个拿提成的员工类,实现拿提成的接口
一个两样都拿的员工类,实现两个接口
后面这三个类分别重载getSalary方法,实现返回总薪水的功能。
如果你不嫌麻烦的话,拿底薪和拿提成可以分别实现两个功能类,生成对象嵌入的相应的员工类中,实现这两部分薪水计算方法的重用。