Compartilhar via


Como: determinar se dois objetos são relacionados (Visual Basic)

Você pode comparar dois objetos para determinar a relação, se houver, entre as classes a partir do qual eles são criados.O IsInstanceOfType método da System.Type classe retorna True se a classe especificada herda da classe atual, ou se o tipo atual é uma interface com o apoio da classe especificada.

Para determinar se um objeto herda da classe ou interface de outro objeto.

  1. No objeto que você acha que pode ser do tipo base, chamar o GetType método.

  2. Sobre o System.Type objeto retornado por GetType, invocar o IsInstanceOfType método.

  3. Na lista de argumentos para IsInstanceOfType, especifique o objeto que você acha que pode ser do tipo derivado.

    IsInstanceOfTypeRetorna True se o seu tipo de argumento herda o System.Type tipo de objeto.

Exemplo

O exemplo a seguir determina se um objeto representa uma classe derivada da classe do objeto.

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

Observe a colocação inesperada das variáveis duas objeto na chamada para IsInstanceOfType.O tipo base suposto é usado para gerar o System.Type classe e o tipo derivado suposto é passado como um argumento para o IsInstanceOfType método.

Consulte também

Tarefas

Como: determinar se dois objetos são idêntico (Visual Basic)

Referência

Tipo de dados Object

GetType

System.Type

IsInstanceOfType

Conceitos

Variáveis de objeto em Visual Basic

Valores de variáveis de objeto (Visual Basic)