none
C#如何使用代码判断一个类是不是抽象类、类中某方法带有何种访问修饰符、是不是静态类(静态方法)?

    问题

  • C#如何使用代码判断处理一下问题:

    [1] 一个类是不是抽象类?

    [2] 类中的某方法带有何种访问修饰符?

    [3] 某个类是不是静态类?

    [4] 某个静态方法是不是静态方法?

    [5] 某个类已经实现了哪几个接口(抽象类),即该类是什么的派生类?

    目前在重写一个动作调用器,需要检索以上内容,但是不知道如何实现,谢谢各位了……


    Who Dares Wins

    2016年3月4日 19:37

答案

  • 反射(C# 和 Visual Basic)


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    • 已建议为答案 Bob_Bao 2016年3月7日 5:07
    • 已标记为答案 周 靖添 2016年3月19日 16:47
    2016年3月5日 10:38

全部回复

  • 反射(C# 和 Visual Basic)


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    • 已建议为答案 Bob_Bao 2016年3月7日 5:07
    • 已标记为答案 周 靖添 2016年3月19日 16:47
    2016年3月5日 10:38
  • 非常感谢,通过您的回复,我找到了我需要的内容:

        (1)使用Assembly定义和加载程序集,加载在程序集清单中列出模块,以及从此程序集中查找类型并创建该类型的实例。 
        (2)使用Module了解包含模块的程序集以及模块中的类等,还可以获取在模块上定义的所有全局方法或其他特定的非全局方法。 
        (3)使用ConstructorInfo了解构造函数的名称、参数、访问修饰符(如pulic 或private)和实现详细信息(如abstract或virtual)等。 
        (4)使用MethodInfo了解方法的名称、返回类型、参数、访问修饰符(如pulic 或private)和实现详细信息(如abstract或virtual)等。
        (5)使用FiedInfo了解字段的名称、访问修饰符(如public或private)和实现详细信息(如static)等,并获取或设置字段值。
        (6)使用EventInfo了解事件的名称、事件处理程序数据类型、自定义属性、声明类型和反射类型等,添加或移除事件处理程序。 
        (7)使用PropertyInfo了解属性的名称、数据类型、声明类型、反射类型和只读或可写状态等,获取或设置属性值。 
        (8)使用ParameterInfo了解参数的名称、数据类型、是输入参数还是输出参数,以及参数在方法签名中的位置等。


    Who Dares Wins

    2016年3月19日 16:49