多态的实现方式;

多态的实现方式;

 

   

 

VB.NET多态性实现

1.         OverLoads:原有成员相同的名称来声明属性或方法,但参数列表与原始成员不同(C#方法重载)

2.         Overrides:在派生类中重写基类成员(VB.NET中在基类中声明为Overridable的方法才可以在派生类中用Overrides关键字重写)(C#OverrideC#中只有AbstactVirtual方法才可以在派生类中重写)

3、通过接口实现多态。

先定义一个接口,在定义不同的类来实现接口。

Interface InfX

        Sub addRecord()

    End Interface

 

    Public Class A

        Implements InfX

 

        Public Sub addRecord() Implements InfX.addRecord

            MsgBox("A实现接口 InfX")

        End Sub

    End Class

 

    Public Class B

        Implements InfX

 

        Public Sub addRecord() Implements InfX.addRecord

            MsgBox("B实现接口 InfX")

        End Sub

    End Class

1、通过继承实现多态。

先定义一个父类,再定义N个子类,子类继承父类,但是还可以有自己的方法。这样子类除了有父类的方法还有子类的方法。

Public MustInherit Class animal

 

    MustOverride Sub eat()

 

    Sub run()

        MsgBox("父类自有的方法,可以不被子类继承,也可以被继承")

  End Sub

End Class

 

Public Class bird : Inherits animal

 

    Public Overrides Sub eat()

        MsgBox("继承的方法eat() ")

    End Sub

 

    Public Sub fly()

        MsgBox("bird 自有的fly() 方法")

    End Sub

End Class

 

Public Class fish : Inherits animal

 

    Public Overrides Sub eat()

        MsgBox("继承的方法eat() ")

    End Sub

 

    Public Sub swim()

        MsgBox("fish自有的方法 swim()")

    End Sub

 

End Class

 

记得听学宇说有好多种实现多态的方法,可是我只知道这几个。哪位有缘看到这篇文章,请帮忙指教。帮忙补充。谢谢哈。

 

据说,设计模式应该是面向对象的思想。继承、封装和多态。还有抽象。设计模式还是要好好的研究的。说实话,都快忘了

你可能感兴趣的:(设计模式,C#,Class,VB.NET,interface)