3
說我有三個班如何判斷對象的類是否與您指定的完全相同?的用法「是」關鍵字
public class A { }
public class B: A { }
public class C: B { }
如果我要創建C objC = new C()
類型的對象,並使用is
關鍵字查詢語句objC is B
的有效性,我將有true
結果。從我所知道的is
只檢查將給定對象實例轉換爲指定類型的有效性。
對於我的應用程序中的一個案例,我需要知道/比較某個對象的特定類,以便在給定對象引用時將它與某種類型進行比較,當且僅當它完全是該類型時才返回true。
有沒有辦法做到這一點?
這聽起來像你的使用情況是基於違反了里氏替換原則的。 'C' *是'B'的一個實例。 – David
你可以做objC.GetType()== typeof(C) –
Object.ReferenceEquals(x.GetType(),y.GetType()) – Hogan