從基類中獲取所有子類名

2021-09-05 21:53:16 字數 519 閱讀 6134

有的時候,我們需要獲取某個基類中的所有子類,從而進行統一管理。這裡有乙個簡單易行的實現:  

class

program

}static

bool

issubclassof(type type, type basetype)b =

b.basetype;

}return

false;}

}public

class

base 

public

class

sub1 : base 

public

class

sub2 : base 

public

class

sub3 : sub1   

原理很簡單,通過反射獲取某個assembly下所有型別,然後將其基類依次對比。效率自然是很差,如果不是頻繁使用的話則是一種行之有效的方法。當然,如果需要頻繁使用,可以通過程式中的硬編碼實現,雖然不容易維護,但效率上比這個是要高太多倍的。

獲取類的所有子類

開發過程中,有時需要獲取某個包下的所有類,或者基於指定規則獲取類清單。比較常見的解決方案是自己遍歷目錄,查詢所有.class檔案。下面這個方法使用spring工具類實現,簡化過程,不再需要自己遍歷目錄 獲取在指定包下某個class的所有非抽象子類 param parentclass 父類 param...

從全域性中通過class類名獲取標籤

doctype html html head meta charset utf 8 title 全域性類名獲取 title meta name keywords content meta name description content style bgred blue style head bod...

從全域性中通過class類名獲取標籤

doctype html html head meta charset utf 8 title 全域性類名獲取 title meta name keywords content meta name description content style bgred blue style head bod...