当前位置: 首页 > 编程语言 > C#

获取类型的继承树分享

时间:2023-04-10 22:53:25 C#

获取类型的继承树可能重复:在C#上使用反射获取父类方法。假设我有以下课程;publicclassA{}publicclassB:A{}publicclassC:B{}等等?我知道我可以使用“IsSubclassOf()”,但假设我不知道我正在寻找的超类。要获取类型的直接父级,您可以使用Type.BaseType属性。您可以迭代调用BaseType直到它返回null以向上移动类型的继承层次结构。例如:publicstaticIEnumerableGetInheritanceHierarchy(thisTypetype){for(varcurrent=type;current!=null;current=current.BaseType)yieldreturncurrent;请注意,使用System.Object作为终结点是无效的,因为它不是所有类型(例如,接口类型)都继承自它。System.Type类型的对象有一个名为BaseType的属性,它返回“当前System.Type直接继承自的类型”。您可以遍历这条BaseType链,直到得到null,此时您知道您已经到达System.Object。以上就是C#学习教程:获取该类型的继承树共享的所有内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处: