如何:确定两个对象是否相关(Visual Basic)

可以比较两个对象,以确定创建它们的类之间的关系(如果有)。 如果 IsInstanceOfType 指定的类继承自当前类,或者当前类型是指定类支持的接口,则类的方法 System.Type 返回 True

确定一个对象是否继承自另一个对象的类或接口

  1. 在认为可能为基类型的对象上,调用该方法 GetType

  2. 在由System.Type返回的GetType对象上,调用IsInstanceOfType方法。

  3. IsInstanceOfType的参数列表中,指定您认为可能为派生类型的对象。

    IsInstanceOfType 返回 True,如果其参数类型继承自 System.Type 对象类型。

示例:

以下示例确定一个对象是否表示从另一个对象的类派生的类。

Public Class baseClass
End Class
Public Class derivedClass : Inherits baseClass
End Class
Public Class testTheseClasses
    Public Sub seeIfRelated()
        Dim baseObj As Object = New baseClass()
        Dim derivedObj As Object = New derivedClass()
        Dim related As Boolean
        related = baseObj.GetType().IsInstanceOfType(derivedObj)
        MsgBox(CStr(related))
    End Sub
End Class

请注意对 IsInstanceOfType 的调用中意外放置的两个对象变量。 所谓的基类型用于生成 System.Type 类,而所谓的派生类型作为参数 IsInstanceOfType 传递给该方法。

另请参阅