Welcome

首页 / 软件开发 / VB.NET / vb.net中用接口实现多态性

vb.net中用接口实现多态性2007-05-24 本站 用户可以在vb.net中使用接口来完成多态性的实现。通过使用多接口,用户可以在不中断运行代码的情况下,允许运行多种软件的系统组件。
接口象类那样描述属性和方法,但是它和类不同的是,接口不能提供任何implementation。
为了使用接口来实现多态性,用户需先建立一个接口,并且通过其他的几个类实现该接口。用户可以用几乎相同的方法调用其他对象已经实现的方法。
下面这个例子就是使用接口的方法实现多态性:

Namespace PolyNamespace Interface AnimalSub Move(ByRef Distance As Double)Sub Bite(Byval What As Object) End Interface Class FleaImplements animalPublic Sub bite(Byval What As Object)Implements animal.bite"Bite somethingEnd SubSub Move(ByRef Distance AS Double)Implements animal.movedistance=Distance+1End Sub End Class Class DogImplements animalPublic Sub bite(Byval What As Object)Implements animal.bite"Bite somethingEnd SubSub Move(ByRef Distance AS Double)Implements animal.move distance=Distance+100End sub End ClassEnd Namespace"add this section to the your formProtected Sub Button1_Click(Byval sender As System.Object,_Byval e As System.EventArgs) Dim aFlea As New Flea() Dim anobj As Object() Dim aDog As New Dog() GetFood(aflea,anobj) GetFood(aDog,anobj)End SubPublic sub GetFood(Byval Critter As Animal,Byval Food As Object) Dim dblDistance As Double "Code to calculate distance to food(omitted). Critter.Move(dblDistance) "Early bound(vtable) Critter.Bite(Food) "Early bound(vtable)End Sub