예 , 추상 클래스에서 매개변수화된 생성자를 정의할 수 있습니다.
추상 클래스에서 매개변수화된 생성자를 정의하기 위한 조건
- 추상 클래스를 확장하는 클래스에 생성자가 있고 슈퍼클래스 매개변수화된 생성자를 호출할 수 있는지 확인해야 합니다.
- super() 를 사용하여 서브클래스에서 슈퍼클래스 매개변수화된 생성자를 호출할 수 있습니다. 전화하세요.
- super()를 배치하지 않는 경우 하위 클래스 생성자 호출, 컴파일 시간 오류 발생합니다.
예시
abstract class AbstractClassTest { AbstractClassTest(int a) { // Parameterized Constructor System.out.println("Parameterized Constructor of an abstract class a="+ x); } } public class Test extends AbstractDemo { Test() { super(20); System.out.println("Test Class Constructor"); } public static void main(String[] args) { Test obj = new Test(); } }
위의 예에서 슈퍼() 통화 하위 클래스 생성자(Test)에서 컴파일 시간 오류가 발생하지 않으면
출력
Parameterized Constructor of an abstract class a=20 Test Class Constructor