extension type에서 super 키워드 사용
extension type에서 super 키워드 사용
Dart 분석기(analyzer)가 만들어 내는 이 진단은, extension type의 인스턴스 멤버에서 super를 사용했을 때 알려줘요. extension type은 슈퍼클래스가 없어서 호출할 상속된 멤버가 없거든요.
본문
진단 메시지는 "The 'super' keyword can't be used in an extension type because an extension type doesn't have a superclass." 즉 "extension type은 슈퍼클래스가 없기 때문에 extension type 안에서는 'super' 키워드를 쓸 수 없어요."라는 뜻이에요.
설명
extension type의 인스턴스 멤버에서 super를 사용하면 이 진단이 나와요. extension type은 슈퍼클래스가 없으니 호출할 상속된 멤버가 없죠.
예시
다음 코드는 extension type에서 super를 사용해서 이 진단이 나와요:
extension type E(String s) {
void m() {
super.m();
}
}
해결 방법
super 호출을 바꾸거나 제거하면 돼요:
extension type E(String s) {
void m() {
s.toLowerCase();
}
}