我的目標是編寫一個打印到控制檯方法的對象。該方法不需要參數,但仍然使用該對象。調用它看起來像:VB:打印其所有字段的對象方法
Dim oBHKW As cBHKW
oBHKW.print()
但是在cBHKW類中,我該如何使用oBHKW對象? 我試過以下沒有成功。
Public Sub print(ByVal sender As Object)
Console.WriteLine(sender.ToString)
End Sub
我的目標是編寫一個打印到控制檯方法的對象。該方法不需要參數,但仍然使用該對象。調用它看起來像:VB:打印其所有字段的對象方法
Dim oBHKW As cBHKW
oBHKW.print()
但是在cBHKW類中,我該如何使用oBHKW對象? 我試過以下沒有成功。
Public Sub print(ByVal sender As Object)
Console.WriteLine(sender.ToString)
End Sub
看一看Me Keyword
Me關鍵字提供了一種方法來指代,其中所述代碼是當前正在執行一個 類或結構的具體實例。
因此,像
Public Sub print()
Console.WriteLine(Me.ToString)
End Sub
使用擴展方法
Imports System.Runtime.CompilerServices
Module ObjectExtensions
<Extension()>
Public Sub Print(sender As Object)
Console.WriteLine(sender.ToString())
End Sub
End Module
Module Module1
Sub Main()
Dim obj As New TestObject()
obj.Print()
End Sub
End Module
Public Class TestObject
End Class
你現在就可以調用任何物體「打印()」上,它將對象本身發送的方法。