- 子类自动拥有父类声明为public和protected的成员,这就是继承特性的体现之一。
- public:外界可自由访问
- private:外界不可访问
- protected:同一包中的子类都可以访问,另一包中的子类(派生于同一个父类)也可以访问;
- default:如果不指明任何权限,则默认同一包中的类可以访问;
在构建一个子类对象,自动调用父类的无参构造。先调用父类,在调用子类。
在子类中写入super调用有参时,先调用父类的无参构造,再构造无参构造。
但是super()只能写在子类构造里的第一句。
构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。标签:初始化,调用,子类,成员,动脑,多态,动手,父类,构造函数 From: https://www.cnblogs.com/daitu66/p/16777039.html
构造一个对象,先调用其构造方法,来初始化其成员函数和成员变量。
子类拥有父的成员变量和成员方法,如果不调用,则从父类继承而来的成员变量和成员方法得不到正确的初始化。
不能反过来调用也是这个原因,因为父类根本不知道子类有神魔变量而且这样一来子类也得不到初始化的父类变量,导致程序运行出错!