super关键字

super:代表父类空间的引用

使用前提:必须存在继承关系

作用:

    1.父类和子类中出现同名的成员(属性和方法)时,在子类中默认访问的是子类的成员,可以使用super关键字访问父类的成员

    格式:super.属性名;    super.方法名();

    2.在创建子类对象时,会默认调用父类无参的构造函数,可以使用super关键字调用父类指定的构造函数

    格式:super(参数列表);//参数列表的不同对应着父类不同的构造函数

super调用父类构造函数注意问题:

    1.在子类构造函数中,如果没有指定调用父类的构造函数,java编译器会在子类构造函数中加上super()语句

    2.在子类构造函数中使用super关键字调用父类构造函数时,必须位于构造函数的第一个语句

    3.在同一个构造函数中,不能同时出现super和this关键字调用其它构造函数,因为它们都必须位于构造函数的第一个语句

super关键字和this关键字的区别:

    1.代表事物的区别:

        super关键字代表父类空间的引用

        this关键字代表所属函数调用者的对象

    2.使用前提的区别:

        super关键字必须存在继承关系才能使用

        this关键字不存在继承关系也能使用

    3.调用构造函数的区别

        super关键字调用的是父类构造函数

        this关键字调用的是本类构造函数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容