abstract_sealed_class 진단: sealed 클래스를 abstract로 표시할 수 없어요

abstract_sealed_class 진단: sealed 클래스를 abstract로 표시할 수 없어요

분석기가 내보내는 진단에는 이름이 있어요. abstract_sealed_class클래스를 abstractsealed 두 한정자로 함께 선언했을 때 Dart 분석기가 알려주는 컴파일 타임 진단이에요. sealed 클래스는 이미 암시적으로 추상(abstract)이기 때문에 두 한정자를 함께 쓰는 건 허용되지 않아요.

출처: abstract_sealed_class

본문

설명

분석기는 클래스가 abstract 한정자와 sealed 한정자를 모두 사용해서 선언되었을 때 이 진단을 만들어요. sealed 클래스는 암시적으로 추상이므로, 두 한정자를 명시적으로 함께 사용하는 것은 허용되지 않아요.

예시

다음 코드는 클래스 Cabstractsealed를 모두 사용해서 선언되었기 때문에 이 진단을 만들어요.

abstract sealed class C {}

흔한 해결 방법

클래스가 추상이어야 하지만 sealed는 아니어야 한다면, sealed 한정자를 제거해요.

abstract class C {}

클래스가 추상이면서 sealed여야 한다면, abstract 한정자를 제거해요.

sealed class C {}

더 알아보기