次のコードを検討してください。
abstract class ClassAbstract {
static int _someValue = 10;
ClassAbstract() {}
}
class NormalClass extends ClassAbstract {
NormalClass(): super() {}
void RunMe() {
print("Value from abstract super: $_someValue"); // Error here
}
}
void main() {
NormalClass normalClass = new NormalClass();
normalClass.RunMe();
print("Application close");
}
これを実行すると、次のエラーが表示されます。
Class 'NormalClass' has no instance getter '_someValue@0x213da713'.
NoSuchMethodError : method not found: '_someValue@0x213da713'
Receiver: Instance of 'NormalClass'
Arguments: []
ここで間違っているかもしれませんが、グローバルな静的変数は継承する必要がありますが、この例からわかるように、そうではありません...