dart mixin出现的目的是什么?
一个类如何直接使用多个父类的能力,而不是继承一个父类,实现多个接口。
dart mixin如何使用?
void main() {
var ab = AB();
var ba = BA();
ab.printMessage();
ba.printMessage();
}
class A {
void printMessage() {
print("print message from A");
}
}
class B {
void printMessage() {
print("print message from B");
}
}
class P {
void printMessage() {
print("print message from P");
}
}
class AB extends P with A, B {}
class BA extends P with B, A {}
dart mixin详细解释
dart中的mixin类是通过创建一个新类来实现的,该类将mixin的实现层叠在一个超类上以创建一个新类,它不是在超类中,而是在超类的顶部。
dart mixin注意事项
如果一个子类使用了多个mixin类,而且这些mixin类都包含相同的方法,那么在调用子类的实现方法时会调用最后的mixin类的方法。
上图输出的结果是
print message from B
print message from A
网友评论