求解,大神
public abstract class Employee{
????private String name;
????public Employee (String name){
????this.name=new String(name);
}
????public String getName(){
????????return name;
}
????public abstract double enrning();
}
public final calss Boss extends Employee{
????private double weeeklySalary;
public Boss(String name,double weeklySalary){
????super(name);
????setWeeklySalary(WeeklySalary);
}
public void setWeeklySalary(double WeeklySalary){
if(WeeklySalary<0) this.WeeklySalary=0;
else this.WeeklySalary=WeeklySalary;
}
public double earnings(){
????return WeeklySalary;
}
public String toString(){
????return"Boss"+getName()+"每周掙"+WeeklySalary+"元";
}
}
父類中的 this.name=new String(name);
子類中的 super(name);分別是什么意思?
2016-05-02
this.name=new String(name);這句話等于this.name=name;就是將name賦值給成員變量name,super(name)意思就是在子類構(gòu)造方法中調(diào)用父類構(gòu)造方法,如果你不寫,可能會(huì)出錯(cuò),一般情況下會(huì)默認(rèn)super(),沒有參數(shù)的情況下
2016-04-27
不理解
2016-04-27
this.name = new String(name)?
重新開啟一個(gè)記憶體空間存放name 的資訊
super(name)
父類的name拿來使用
我想因該是這樣吧,但因該不用new String(name)吧