public class Base { /*public Base() { System.out.println("Base 类的初始构造方法"); }*/ public Base(int x) { System.out.println("Base 类的重载构造方法"); } public void a() { System.out.println("Base:a()"); } public void b() { // this 在哪个类里就是哪个对象本身 this.a(); } public static void main(String[] args) { Base obj = new Base(2); obj.b(); } }
Base 类的重载构造方法 Base:a()
public class Sub extends Base{ public Sub() { // 默认调用不带参数的构造方法,因为父类没有不带参数的构造方法,所以要显示调用带参数的构造方法 //super(); // 调用父类的构造方法 super(100); // 调用父类的方法 super.a(); System.out.println("Sub类的初始化构造方法"); } public static void main(String[] agrs) { // 子类对象构造时会先调用父类的构造方法 Sub obj = new Sub(); } }
Base 类的重载构造方法 Base:a() Sub类的初始化构造方法
时间: 2024-11-03 05:32:07