Nasıl yapılır: İki Nesnenin İlgili Olup Olmadığını Belirleme (Visual Basic)

İki nesneyi karşılaştırarak oluşturuldukları sınıflar arasındaki ilişkiyi (varsa) belirleyebilirsiniz. IsInstanceOfType Sınıfın System.Type yöntemi, belirtilen sınıf geçerli sınıftan devralıyorsa veya geçerli tür belirtilen sınıf tarafından desteklenen bir arabirimse döndürürTrue.

Bir nesnenin başka bir nesnenin sınıfından mı yoksa arabiriminden mi devraldığını belirlemek için

  1. Temel türde olabileceğini düşündüğünüz nesnede yöntemini çağırın GetType .

  2. tarafından döndürülen nesnede System.Type yöntemini çağırınIsInstanceOfType.GetType

  3. için IsInstanceOfTypebağımsız değişken listesinde türetilmiş türde olabileceğini düşündüğünüz nesneyi belirtin.

    IsInstanceOfTypebağımsız değişken türü nesne türünden System.Type devralıyorsa döndürürTrue.

Örnek

Aşağıdaki örnek, bir nesnenin başka bir nesnenin sınıfından türetilmiş bir sınıfı temsil edip etmediğini belirler.

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

çağrısında iki nesne değişkeninin beklenmeyen yerleşimine dikkat edin IsInstanceOfType. Sözde temel tür sınıfı oluşturmak System.Type için kullanılır ve sözde türetilmiş türü yöntemine IsInstanceOfType bir bağımsız değişken olarak geçirilir.

Ayrıca bkz.