super 的作用
用于获得被扩展类的属性和方法
扩展类的构造方法
super 并没有在内存中创建被扩展对象, 扩展类其实是被扩展类的升级或者说变异,被扩展类的构造方法会在变异的类中隐式调用,从而包装出新的构造方法
单例模式无法被扩展
要想类被扩展,扩展类会隐式调用构造方法,但单例模式的构造是私有的,因此无法被扩展,这也是单例模式的缺陷
扩展类的覆盖
扩展类会覆盖掉被扩展类的属性和方法,此时,可以通过 super 来访问这些被覆盖掉的属性和方法
用于获得被扩展类的属性和方法
super 并没有在内存中创建被扩展对象, 扩展类其实是被扩展类的升级或者说变异,被扩展类的构造方法会在变异的类中隐式调用,从而包装出新的构造方法
要想类被扩展,扩展类会隐式调用构造方法,但单例模式的构造是私有的,因此无法被扩展,这也是单例模式的缺陷
扩展类会覆盖掉被扩展类的属性和方法,此时,可以通过 super 来访问这些被覆盖掉的属性和方法
相关课程