我想做这样的事情。
abstract class A {
void someMethod(dataStates) {
switch (dataStates) {
case DataStates.loading:
stackIndex = 0;
break;
case DataStates.failed:
stackIndex = 1;
break;
case DataStates.completed:
stackIndex = 2;
break;
} // switch
} // someMethod
} // class A
class B implements A {
@override
void someMethod(dataStates) {
switch (dataStates) {
case DataStates.loading:
stackIndex = 0;
break;
case DataStates.failed:
stackIndex = 1;
break;
case DataStates.completed:
stackIndex = 2;
break;
} // switch
} // someMethod
} // class B
但是当我在B类中重写someMethod()时 我得到的方法是空的,就像这样。
@override
void someMethod(dataStates) {
// TODO: implement someMethod
}
如何在重写时有一个默认(模板)的方法体?
使用这个
@override
void someMethod(dataStates) {
super.someMethod(dataSates);
}
class B extends A { // extends not implements
@override
void someMethod(dataStates) {
super.someMethod(dataStates);
// Do what you want to do
}
}