问题
抽象类图
以下类图是实际项目使用的情况抽象出来
mixin Base{
// 注意这里
bool isEdit=true;
}
mixin A on Base{
String? name;
}
mixin B on Base{
String? age;
// 注意这里
bool isEdit=false;
}
mixin C on A,B{
void printVal(){
print('$isEdit');
}
}
class D with Base,A,B,C{
}
void main(){
D().printVal();
// 这里输出是什么?
}
验证输出
-
为什么?
Dart 的规则是当加入的
mixin
变量冲突时,以最后的mixin
为准参考文章
- Mixins in Dart
- Dart: What are mixins?