[Flutter] extends、implements、mixin和 abstract、extension的使用介绍说明
在Flutter中,extends
和implements
用于类与接口的继承和实现。mixin
用于混入类,提供一种方式来在不继承类中的情况下添加方法。abstract
和extension
是Dart语言的特性,用于定义抽象类和扩展方法。
extends
:子类继承父类的成员(属性和方法)。
class Animal {
void eat() {
print('Animal is eating');
}
}
class Dog extends Animal {
// Dog类继承了Animal类的eat方法
}
implements
:类实现接口中定义的方法。
abstract class Eatable {
void eat();
}
class Dog implements Eatable {
@override
void eat() {
print('Dog is eating');
}
}
mixin
:可以混入类中的方法,不需要继承。
mixin Runnable {
void run() {
print('Mixin is running');
}
}
class Dog with Runnable {
// Dog类混入了Runnable的run方法
}
abstract
:定义抽象类和抽象方法,不能被实例化。
abstract class Animal {
void eat(); // 抽象方法
}
class Dog implements Animal {
@override
void eat() {
print('Dog is eating');
}
}
extension
:为现有类添加新的方法。
extension MyString on String {
bool isNumeric() {
return this.trim().runtimeType == int;
}
}
void main() {
String str = '123';
print(str.isNumeric()); // 输出: true
}
以上是Flutter和Dart语言中关于继承、实现、混入和扩展的基本概念和用法。
评论已关闭