concrete_class_has_enum_superinterface 진단: Enum을 superinterface로 가진 구체 클래스

concrete_class_has_enum_superinterface 진단: Enum을 superinterface로 가진 구체 클래스

Dart 분석기가 만들어 내는 concrete_class_has_enum_superinterface 진단에 대한 설명이에요.

출처: concrete_class_has_enum_superinterface

본문

구체 클래스가 간접적으로 Enum 클래스를 superinterface로 가지게 되면 분석기가 이 진단을 만들어요.

예시

다음 코드는 구체 클래스 BA를 구현한 결과로 Enum을 superinterface로 가지게 되어서 이 진단을 만들어요.

abstract class A implements Enum {}

class B implements A {}

흔한 해결 방법

구현한 클래스가 의도한 클래스가 아니라면, 그것을 바꿔주면 돼요.

abstract class A implements Enum {}

class B implements C {}

class C {}

구현한 클래스가 Enum을 구현하지 않도록 바꿀 수 있다면, 그렇게 해주면 돼요.

abstract class A {}

class B implements A {}

구현한 클래스가 Enum을 구현하지 않도록 바꿀 수 없다면, implements 절에서 빼주면 돼요.

abstract class A implements Enum {}

class B {}

더 알아보기