Discuss / Java / 继承成员变量问题

继承成员变量问题

Topic source

MaybeOne926

#1 Created at ... [Delete] [Delete and Lock User]

描述:父类拥有income字段

子类也拥有income字段

使用多态访问income字段,默认访问的是父类的income,而不是子类的

public class Father{
    double income;    
    public Father(double income) {
        this.income = income*2;    
 }
}
class Salary extends Father{
    protected double income;   
    protected double some= 1.0;    
    public Salary(double income) {
        super(income);        
        this.income = income;    
 }
}
class Main{
    public static void main(String[] args) {
        Father d = new Salary(7500);       
        System.out.println(d.getClass().getName());        //输出 Salary
        System.out.println(d.income);                      //输出 15000.0
 }
}

MaybeOne926

#2 Created at ... [Delete] [Delete and Lock User]

放错位置了。。。。。下一章的多态问题

廖雪峰

#3 Created at ... [Delete] [Delete and Lock User]

对你这个错误用法专门补了一条:

注意:子类自动获得了父类的所有字段,严禁定义与父类重名的字段!

yangim无悔

#4 Created at ... [Delete] [Delete and Lock User]

廖老师  , 标准中有这条规范吗 : 

对你这个错误用法专门补了一条:

注意:子类自动获得了父类的所有字段,严禁定义与父类重名的字段!


  • 1

Reply