构造方法的继承:
1. 构造方法不可继承:构造方法不是被继承的,子类不会直接继承父类的构造方法。但是,子类在实例化时会调用父类的构造方法,以初始化继承的字段。
2. 默认调用父类构造方法:如果子类的构造方法中没有显式调用父类的构造方法(使用 `super()`),则会默认调用父类的无参构造方法(如果存在)。如果父类没有无参构造方法,子类必须显式调用父类的构造方法。
this 和 super 关键字的使用:
1. this 关键字:
>`this` 关键字表示当前对象的引用,用于区分实例变量和方法参数之间的名称冲突。可以使用 `this` 调用当前类的其他构造方法。
> 在构造方法中,可以使用 `this()` 调用当前类的其他构造方法,但是必须作为构造方法的第一行语句。
2. super 关键字:
>`super` 关键字表示父类的引用,用于访问父类的方法、字段和构造方法。
>在子类构造方法中,可以使用 `super()` 调用父类的构造方法,以便初始化继承自父类的字段。如果不显式调用,会默认调用父类的无参构造方法。
>如果父类没有无参构造方法,子类必须显式调用父类的构造方法,可以使用 `super(参数列表)` 调用父类的有参构造方法。