의 눈에 띄기 나는 PetitParserDart has a lot of @override
in the code으로 눈치 채었지만 어떻게 확인해야 할 지 모르겠다.다트 코드
IDEA 다트 플러그인 @override
을 시도했지만 전혀 효과가 없습니다. @override
을 Dart와 함께 사용하려면 어떻게해야하나요? @override
doc로부터
의 눈에 띄기 나는 PetitParserDart has a lot of @override
in the code으로 눈치 채었지만 어떻게 확인해야 할 지 모르겠다.다트 코드
IDEA 다트 플러그인 @override
을 시도했지만 전혀 효과가 없습니다. @override
을 Dart와 함께 사용하려면 어떻게해야하나요? @override
doc로부터
@override
주석은 메타 데이터의 한 예입니다. 미러를 사용하여 코드에서이를 확인할 수 있습니다. 도구를 그렇게 때 아무 문제가 없기 때문에, 지금은 어쨌든
import 'package:meta/meta.dart';
import 'dart:mirrors';
class A {
m1() {}
}
class B extends A {
@override m1() {}
}
void main() {
ClassMirror classMirror = reflectClass(B);
MethodMirror methodMirror = classMirror.methods[const Symbol('m1')];
InstanceMirror instanceMirror = methodMirror.metadata.first;
print(instanceMirror.reflectee); // Instance of '[email protected]'
}
:
상속 반원으로서 재정의 인스턴스 부재 (메소드, 필드, 또는 게터 세터)를 표시하는 데 사용되는 주석. 도구는 재정의 된 멤버가 없으면이 주석을 사용하여 경고를 제공 할 수 있습니다.
따라서 사용하는 도구에 따라 다릅니다.
현재 다트 편집기 (r24275)에는 다음 코드에 대한 경고는 없지만 버그 (버그)처럼 보입니다.
import 'package:meta/meta.dart';
class A {
m1() {}
}
class B extends A {
@override m1() {} // no warning because A has a m1()
@override m2() {} // tools should display a warning because A has no m2()
}
그것은 @Override를 사용하는 것이 좋습니다는 아마 다음은 자식 클래스의
m1()
방법은@verride
주석이 있는지 확인하는 간단한 예입니다 고정되어 작동합니다. 또한 코드를 읽는 다른 프로그래머에게도 유용합니다. –