在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
super class Person { int age; string name; Person(int age, String name){ this.age = age; this.name = name; } void sayhi(){ print('my name is' this.name) } } class Worker extend Person{ int salary; Worker(int age, string name, int salary) : super(age, name){ //super表示要继承父类的属性 this.salary = salary; } @override //告诉编译器和程序员他是一个重写覆盖父类的方法 void sayhi(){ 在dart中是单继承只能继承单个父类,不能继承多个类,若想实现多继承必须通过多混合的方式实现。extend关键字将变成with来实现混合 混合:同时具备多个类的方法若类中有一个方法,混合里边也有一个方法,则优先使用类自身的方法; 若只有混合里边有同名的方法,在最后面的会生效(如下例子中sleep会生效),因为他把前边的混合掉了 void main(){ 抽象类抽象类的关键词:abstract,只有方法的定义,没有方法的实现。存在的意义就是有这个想法但是还没有实现。如果person类继承了抽象类,则抽象类中方法的实现便交给继承者实现; 抽象类另一个特点是不能被实例化 abstract class Chouxiang{ void ya() } class person extend Chouxiang{ void ya(){ print('sdf') } }
|
请发表评论