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