面向对象-接口
/**
* 使用implements 关键字进行实现
*
* 如果 实现的是普通类,会将普通类和抽象中的属性的方法全部需要 覆写一遍
*
* 因为抽象类可以定义抽象方法,普通类不可以,所以一般如果需要实现向Java接口那样的方法,一般会使用抽象类
*
* 建议使用抽象类定义接口
*
* */
// 定义一个 DB库 支持 mysql mssql mongodb
// mysql mssql mongodb 三个类里面都有同样的方法
abstract class Db {
String uri;
// 当做接口
add(String data); // 抽象方法
save();
delete();
}
class Mysql implements Db {
Mysql(this.uri);
@override
add(String data) {
print('add Mysql' + data);
}
@override
delete() {
// TODO: implement delete
return null;
}
@override
save() {
// TODO: implement save
return null;
}
@override
String uri;
}
class MsSql implements Db {
@override
add(String data) {
print('add MsSql' + data);
}
@override
delete() {
// TODO: implement delete
return null;
}
@override
save() {
// TODO: implement save
return null;
}
@override
String uri;
}
void main() {
Mysql mysql = new Mysql('xxx');
mysql.add('1234');
}
我是Eric,手机号是13522679763

浙公网安备 33010602011771号