JAVA基础--继承中的构造方法

1. 子类的构造方法必须调用父类的构造方法

2. 子类在自己的构造方法中使用super(argument_list)调用父类的构造方法, 使用this(argument_list)调用自己的其他的构造方法

    如果调用super,必须写在子类构造方法的第一行.

3. 如果子类构造方法没有显式调用父类构造方法, 默认调用父类无参数的构造方法

4. 如果子类构造方法没有显示调用父类的构造方法, 基类又没有无参的构造方法, 则编译出错.

class SuperClass {
    private int n;
  	
  
    SuperClass() {
        System.out.println("SuperClass()");
    }
   
    
  
    SuperClass(int n) {
        System.out.println("SuperClass(" + n + ")");
        this.n = n;
    }
}

class SubClass extends SuperClass {
    private int n;
    
    SubClass(int n) {
    		//super();
        System.out.println("SubClass(" + n + ")");
        this.n = n;
    }
    
    SubClass() {
    		super(300);
        System.out.println("SubClass()");
    }
}

public class TestSuperSub {
    public static void main(String arg[]) {
        SubClass sc1 = new SubClass();
        SubClass sc2 = new SubClass(400);
    }
}

  

原文地址:https://www.cnblogs.com/wujixing/p/5320463.html