【VB.NET】类与接口理解
【摘自MSDN帮助】
接口定义类所能实现的属性、方法和事件。 接口允许将功能定义为一些紧密相关的属性、方法和事件的小组;这样就减少了兼容性问题,因为可以在不损害现有代码的情况下开发接口的增强型实现。 在任何时候都可以通过开发附加接口和实现来添加新的功能。
以下是为何要使用接口继承而不用类继承的一些其他原因:
1.在应用程序要求很多可能不相关的对象类型以提供某种功能的情况下,接口的适用性更强。
2.接口比基类更灵活,因为可以定义单个实现来实现多个接口。
3.在无需从基类继承实现的情况下,接口更好。
4.在无法使用类继承的情况下接口非常有用。 例如,结构无法从类继承,但它们可以实现接口。
个人理解
首先VB.NET不支持多重继承,举个很简单的例子:
定义两个类,“狗类”与“人类”
现在有个“学生类”,显然“学生类”可以继承人类,但是不可能继承狗类。但是人和狗都可以吃,跑。因此可以定义接口,用类来实现吃和跑的接口。接口相当于契约,一个接口定义一个协定,没有方法体。接口类似于抽象基类,不能被实例化。