unity 使用反射从Type来实例化一个类
在Unity中,可以使用反射从Type实例化一个类。下面是一个示例代码:
using System;
using UnityEngine;
public class MyClass
{
public void MyMethod()
{
Debug.Log("Hello from MyClass!");
}
}
public class ReflectionExample : MonoBehaviour
{
private void Start()
{
// 获取MyClass的Type
Type myClassType = typeof(MyClass);
// 使用反射实例化MyClass
MyClass myClassInstance = Activator.CreateInstance(myClassType) as MyClass;
// 调用MyClass的方法
myClassInstance.MyMethod();
}
}
在上面的代码中,首先我们获取了MyClass的Type,然后使用Activator.CreateInstance方法根据Type实例化了MyClass,最后调用了MyClass的方法。
请注意,使用反射实例化类可能会导致性能下降,所以应该尽量避免频繁使用
原文地址: https://www.cveoy.top/t/topic/iJp1 著作权归作者所有。请勿转载和采集!