extends
继承。 Dart里没有多继承。根类是Object.
abstract class StatefulWidget extends Widget
abstract class StatelessWidget extends Widget
mixin ( With)
混入(mixin)。通过非继承的方式使用另一个类的函数。
//flutter 里用到混用的类
abstract class Diagnosticable with DiagnosticableMixin
示例
class A {
a(){
print("this is a function!");
}
}
mixin aa {
aaFunction(){
print("this is aa function! ha ha !");
}
}
class Aa with aa,A
{
}
//调用
Aa()
..a()
..aaFunction();
implements
实现。dart里没有interface 关键字。implements 与OC 的 delegate 类似。
eg :flutter 里的Element 和 List。 BuildContext 和 Iterable 都抽象类(abstract)只是提供接口,然后在 implements 的类里去实现。Flutter里用到的 implements的类