16.面向对象进阶:继承,重写,构造器访问,成员访问,this&

2022-01-20  本文已影响0人  每天起床都想摆

面向对象三大基本特征之二:继承

继承概述

继承的设计规范,内存运行原理

继承设计规范

内存运行原理

继承的特点(面试热点)

  1. 子类可以继承父类的属性和行为,但是子类不能继承父类的构造器

    • 子类有自己的构造器,父类构造器用于初始化父类对象

    • 子类是否可以继承父类私有的成员(存在争议)

      • Java官方文档的解释:子类不能继承父类的私有成员,但是如果子类中公有的方法影响到了父类私有成员,那么私有成员是能够被子类使用的

      • 个人理解:当存在一个子类对象时,在内存空间上:子类对象继承的super中私有成员被继承但是无法直接访问

      image.png
    • 子类是否可以继承父类的静态成员(存在争议)

      • 子类可以直接使用父类的静态成员(共享并非继承)

        静态的成员属于类本身,且静态只会加载一次,静态是属于父类的关系,即子类不能继承父类的静态成员,这种关系是父类向子类共享静态成员,子类可以共享访问使用静态成员,但是并非继承关系

  2. Java是单继承模式,一个类只能继承一个直接父类

  3. Java不支持多继承,但是支持多层继承

  4. Java中所有的类都是Object类的子类

继承后:成员变量,成员方法的访问特点

继承后:方法重写

继承后:子类构造器的特点

继承后:子类构造器访问父类有参构造器

this,super使用总结

关键字 访问成员变量 访问成员方法 访问构造方法
this this.成员变量
访问本类成员变量
this.成员方法
访问本类成员方法
this(...)
访问本类构造器
super super.成员变量
访问父类成员变量
super.成员方法
访问父类成员方法
super(...)
访问父类构造器
上一篇 下一篇

猜你喜欢

热点阅读