簡體   English   中英

如何找到類型的接口繼承層次結構?

[英]How do I find the Interface Inheritance Hierarchy For a type?

我的目的是找出一個類是否直接實現了一個接口。 在下面的示例中,B類實現接口IB,接口IB實現IA。

我如何找出繼承層次結構? 當我們在對象瀏覽器中查看類型時,它會顯示詳細的層次結構。 我怎樣才能達到類似的效果?

interface IA
{
    string Member1 { get;set; }
}

interface IB : IA
{
    string Member2 { get; set; }
}

class B : IB
{
    public string Member1 { get; set; }
    public string Member2 { get; set; }
}

反射器截圖

替代文字http://img571.imageshack.us/img571/7485/49211426.png

在從反射器獲取的屏幕截圖中,它還顯示了接口的層次結構。

如何找到Type的接口層次結構。

構建了Reflection和.NET內核,使接口可以快速使用。 因此,Type.GetInterfaces返回該類型可以響應的所有接口,“展平”流程中的接口層次結構。

如果要分配這些接口的祖先,則還需要在每個接口上調用GetInterfaces。 沒有捷徑,因為接口的層次結構對CLR運行時沒什么價值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM