java041继承中成员变量的特点与super关键字

2018-12-02  本文已影响0人  牛倩贱

1.子类只能获取父类非私有成员

2.子父类中成员变量的名字不一样,直接获取父类的成员变量

3.子父类中成员变量名字是一样的,采用就近原则,即获取的是子类的成员变量

就近原则:

    如果有局部变量,就使用局部变量

    如果没有局部变量,有子类成员变量就使用子类的成员变量

    如果没有局部变量和子类成员变量,有父类的成员变量,就使用父类成员变量

super关键字:

        作用:用于访问父类的成员

注意:通过super调用父类构造方法的代码必须位于子类的构造方法的第一行,并且只能出现一次。

    在子类的构造方法中一定会调用父类的某个构造方法,这时可以在子类的构造方法中通过super指定调用父类的哪个构造方法,如果没有指定,在实例化子类对象时,会自动调用父类无参的构造方法。

在定义一个类的时候,尽量在类中定义一个无参的构造方法避免被继承时出现错误。

this和super的区别:

this,当前对象的引用,调用子类的成员变量,调用子类的成员方法,在子类的构造方法第一行调用子类其他构造方法

super,子类对象的父类引用,调用父类 的成员变量,调用父类的成员方法,在子类的构造方法第一行调用父类的构造方法

上一篇下一篇

猜你喜欢

热点阅读