>
우리는 class a 가 있다고 가정 :

class A {
  A._();
}

기본 생성자비공개입니다 : A._() .

extends 에 대한 방법이 있습니까  그 수업?

문제

class B extends A {
}

이로 인해컴파일러오류가 발생합니다 :

The superclass 'A' doesn't have a zero argument constructor.

B 를위한any생성자 구성  나 자신 ( B() )로 인해 다른 오류가 발생합니다 :

The superclass 'A' doesn't have an unnamed constructor.

  • 답변 # 1

    아니요, 방법이 없습니다. 이는 확장을 방지하는 효과적인 방법입니다.

    여전히 할 수있는 것은 클래스를 구현하는 것입니다.

    class B implements A {}
    
    

    클래스클래스에 팩토리가 아닌 생성자가 생성자 인 경우에도 생성자 호출을 슈퍼 클래스의 이름이 지정된 생성자에게 전달하여 클래스를 확장 할 수 있습니다.

    class B extends A {
      B() : super.other();
    }
    
    

관련 자료

  • 이전 c - 이 프로그램은 2 차원 배열의 각 열의 곱을 다른 1 차원 배열에 저장하도록되어있었습니다
  • 다음 android - 조각은 어떻게 활동의 데이터를 수신해야합니까?