Flutter学习笔记09:Dart接口

接口定义了一组对象可用的方法。Dart没有声明接口的语法。类声明本身就是Dart中的接口。类应该使用implements关键字来实现接口。实现类必须复写已实现接口的所有功能的具体实现。换句话说,类必须重新定义它希望实现的接口中的每个函数。
定义的接口:

class InterfaceClass{
  void supperInter(){    print("This is SupperClass:InterfaceClass.dart");  }
}

接口的实现类:

class DetailClass implements InterfaceClass{
	//  DetailClass();
  	void printMsg(String msg){    
  		print("this is DetailClass print,${msg}");  
  	}
  	@override
  	void supperInter() {    
  		print("this is override method by Supper Class:InterfaceClass");  
  	}
}

main()函数的调用:

void aboutInterface(){
  var detail = DetailClass();  
  detail.printMsg("Test 接口Interface");  
  detail.supperInter();
}

运行效果如下:
在这里插入图片描述
从上面的运行结果我们可以看到:

1、Dart的接口与实现规则跟Java的接口与实现规则是完全一样的。

2、我们在接口InterfaceClass里面定义了supperInter()方法,并有具体的实现。但是在经过子类的实现并复写之后,接口的方法实现就被覆盖了,不在生效。

3、Dart里面,每个类也是遵守单继承多实现的原则,也就是继承extends只能继承一个父类,实现implements则能够理论上实现无限多个父类。

你可能感兴趣的:(Flutter)