C# 反射:类型信息、对象创建、属性访问、方法调用、字段访问 - 代码示例

C# 反射允许你在运行时获取类型信息并操作对象。这在需要动态操作代码或无法预知类型的情况下非常有用。

以下是 C# 反射常用操作的示例:

1. 获取类型信息

Type type = typeof(MyClass);

2. 创建对象实例

MyClass obj = (MyClass)Activator.CreateInstance(typeof(MyClass));

3. 访问属性

PropertyInfo propertyInfo = type.GetProperty('MyProperty');
object propertyValue = propertyInfo.GetValue(obj);

4. 调用方法

MethodInfo methodInfo = type.GetMethod('MyMethod');
methodInfo.Invoke(obj, null);

5. 访问字段

FieldInfo fieldInfo = type.GetField('MyField');
object fieldValue = fieldInfo.GetValue(obj);

6. 获取所有方法

MethodInfo[] methods = type.GetMethods();

7. 获取所有属性

PropertyInfo[] properties = type.GetProperties();

8. 获取所有字段

FieldInfo[] fields = type.GetFields();

9. 获取所有构造函数

ConstructorInfo[] constructors = type.GetConstructors();

10. 获取注释

MemberInfo memberInfo = type.GetMember('MyMember');
object[] attributes = memberInfo.GetCustomAttributes(typeof(DescriptionAttribute), false);

通过以上代码示例,你可以了解如何使用 C# 反射来获取类型信息、创建对象实例、访问属性和字段、调用方法以及获取注释。反射是一个强大的工具,可以帮助你构建更加灵活和可扩展的代码。

C# 反射:类型信息、对象创建、属性访问、方法调用、字段访问 - 代码示例

原文地址: https://www.cveoy.top/t/topic/mVvM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录