Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java의 추상 클래스에서 매개변수화된 생성자를 정의할 수 있습니까?

<시간/>

, 추상 클래스에서 매개변수화된 생성자를 정의할 수 있습니다.

추상 클래스에서 매개변수화된 생성자를 정의하기 위한 조건

  • 추상 클래스를 확장하는 클래스에 생성자가 있고 슈퍼클래스 매개변수화된 생성자를 호출할 수 있는지 확인해야 합니다.
  • 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