abstract_super_member_reference 진단: 슈퍼타입에 추상 멤버가 없는 경우

abstract_super_member_reference 진단: 슈퍼타입에 추상 멤버가 없는 경우

분석기가 내보내는 진단에는 이름이 있어요. abstract_super_member_referencesuper를 사용해 상속받은 멤버를 참조했는데, 슈퍼클래스 체인에 해당 멤버의 구체적인 구현이 없을 때 Dart 분석기가 알려주는 컴파일 타임 진단이에요. 추상 멤버는 호출할 수 없어요.

출처: abstract_super_member_reference

본문

설명

분석기는 상속받은 멤버를 super로 참조했는데 슈퍼클래스 체인에 그 멤버의 구체적인 구현이 없을 때 이 진단을 만들어요. 추상 멤버는 호출할 수 없기 때문이에요.

예시

다음 코드는 Ba의 구체적인 구현을 상속받지 않기 때문에 이 진단을 만들어요.

abstract class A {
  int get a;
}

class B extends A {
  @override
  int get a => super.a;
}

흔한 해결 방법

추상 멤버에 대한 호출을 제거하고, 가능하면 구체적인 멤버에 대한 호출로 바꿔요.

더 알아보기