vb.net Overridable和Overrides,Overloads的使用

 一, Overridable和Overrides

能重写和重写。是用在父类和子类中的。

如:父类:baseForm

    Public Overridable Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Debug.WriteLine("common: Button1_Click")
        If MsgBox("確認", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
            Button1_Do()
        End If
    End Sub

 

    Public Overridable Function Button1_Do()
        MsgBox("base=>Button1_Do")
        Return ""
    End Function

其中有事件和方法都是Overridable :可以重写的。

所以在子类中就可以这样:

函数Button1_Do加上Overloads 就被重写了。父类的Button1_Do内容就无效了。

同样:事件Button1_Click加上Overrides也被复写了。父类的Button1_Click内容就无效了。

需要注意的是:Handles Button1.Click不删除的话,会调用两次。

一次是父类重写,一次是自身激活。

 

   Public Overloads Function Button1_Do()
        MsgBox("subForm=>Button1_Do")
        Me.Close()
        Return "sub"
    End Function

    Public Overrides Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Debug.WriteLine("sub: Button1_Click")
        If MsgBox("確認", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
            Button1_Do()
        End If

    End Sub

 

二,Overloads重载

在一个类中,同名的函数可以定义多次。只不过参数个数,类型,返回值不一致

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值