黑马程序员技术交流社区
标题:
继承问题 到底哪里错了
[打印本页]
作者:
任献东
时间:
2014-10-16 11:09
标题:
继承问题 到底哪里错了
public class Test1 {
public static void main(String[] args) {
Employee em = new Employee("lisi", "9527", 3000);
Manager ma = new Manager("wangwu", "3978", 5500, 1500);
System.out.println("员工:"+em.getName()+"工号:"+em.getNumber()+"工资:"+em.getSalary());
System.out.println("员工:"+ma.getName()+"工号:"+ma.getNumber()+"工资:"+em.getSalary());
}
}
class Employee {//职工
private String name;
private String number;
private double Salary;
public void setName(String name) {
this.name = name;
}
public void setNumber(String number) {
this.number = number;
}
public void setSalary(double Salary) {
this.Salary = Salary;
}
public String getName() {
return name;
}
public String getNumber() {
return number;
}
public double getSalary() {
return Salary;
}
public Employee(String name,String number,double Salary){
this.name=name;
this.number=number;
this.Salary=Salary;
}
}
class Manager extends Employee{//经理继承
private double award;//奖金
public double getAward() {
return award;
}
public void setAward(double award) {
this.award = award;
}
public Manager(String name, String number, double Salary,double award) {
super(name, number, Salary);
// TODO Auto-generated constructor stub
this.award=award;
}
public double getSalary(){
return super.getSalary()+this.award;
}
}
复制代码
员工:lisi工号: 9527工资:3000.0
经理:wangwu工号: 3978工资:3000.0
经理的工资为什么数值不对啊 到底哪里错了
作者:
DreamSeeker
时间:
2014-10-16 12:07
你经理的getSalary()方法根本就没有执行过。。。。。。。。。。。
作者:
DreamSeeker
时间:
2014-10-16 12:10
我的个去,终于看见了,你看你调用的是谁的方法,你两次调用的都是员工的getSalary()方法,要是能把经理工资输出来才是见鬼了...
作者:
DreamSeeker
时间:
2014-10-16 12:12
System.out.println("员工:"+ma.getName()+"工号:"+ma.getNumber()+"工资:"+em.getSalary());
复制代码
你用em.getSalary()想输出ma.getSalary(),你也是醉了
作者:
任献东
时间:
2014-10-16 12:17
DreamSeeker 发表于 2014-10-16 12:10
我的个去,终于看见了,你看你调用的是谁的方法,你两次调用的都是员工的getSalary()方法,要是能把经理工资 ...
啊啊啊 我也刚注意到 经理的对象忘改了亏我还找了半天逻辑错误
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2