那dart中的接口到底是什么场景使用呢?它是为了解决什么而出现的?
假设有两个类,A和B,如果B是A的扩展,A的属性和方法,B都有,那么使用B继承(extends)A就好。
但是如果A和B只是有一部分交集,有几个共同的属性和方法,但有分别有各自特有的属性和方法,那么用继承就不合适了,这时就可以使用接口,把共同的这一部分属性和方法写在接口C 里,让A和B分别接入(implements)接口。
也可以使A和B分别继承C,这个视具体场景而定,一般而言,如果A和B的大部分属性和属性都可以放在C里从C获取,那么A和B就像C的子类,更适合用继承;如果A和B只是小部分属性和方法相同,那么更适合把这小部分属性和方法抽出来作为一个接口使用,这样逻辑上更通畅。
目的都是为了使代码更精炼、可读性更强、减少代码重复……
感谢回答,讲解非常细致,已经理解了,谢谢?这么看起来,dart在设计上还是花了很多心思的