Java学习(三)继承

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012832088/article/details/81584987

Java学习(三)继承

语法:使用extends实现继承
单一继承,只能有一个父类

  • 父类的构造不允许被继承、不允许被重写,但是会影响子类对象的实例化过程
  • 子类构造默认调用父类无参构造方法(无参构造很重要),可以通过super()调用父类允许被访问的其他构造方法。super()必须放在子类构造方法有效代码的第一行
  • -

继承后的初始化顺序

  • 父类的静态代码块——》子类的静态代码块——》父类的构造代码块——》父类的无参构造方法——》子类的构造代码块——》子类的无参构造方法
  • 父类静态成员——》子类静态成员——》父类对象构造——》子类对象构造
  • 访问修饰符不影响成员加载顺序,跟书写位置有关

this 与 super

构造方法调用时,super和this不能同时出现
super:子类的构造方法中必须调用其父类的构造方法,默认调用无参的构造方法;如果子类构造方法中既没有显示标注,而父类又没有无参的构造方法,则编译出错;使用super调用父类指定构造方法,必须在子类的构造方法中第一行

  • this:当前类对象的引用
    • 访问当前类的成员方法
    • 访问当前类的成员属性
    • 访问当前类的构造方法
    • 不能在静态方法中使用
    • -
  • super:父类对象的引用
    • 访问父类的成员方法
    • 访问父类的成员属性
    • 访问父类的构造方法
    • 不能在静态方法中使用

猜你喜欢

转载自blog.csdn.net/u012832088/article/details/81584987