如果我只获得了类的字符串名称,如何在静态类上调用方法?
本文关键字:静态类 方法 调用 获得了 字符串 如果 | 更新日期: 2023-09-27 18:11:45
例如,我有一个字符串列表,恰好是静态类的名称,根据选择的字符串名称,我只想使用该静态类。我知道在静态类上调用了什么方法,并且在每个类上都是相同的。
如果字符串是"x","y","z",选择的字符串是"z",方法称为process()
,那么在我的代码中,它将以某种方式调用x.process()
, x是实际静态类的名称。
记住这些是static
类
您将使用反射,但包含class
名称的namespace
。
Type type = Type.GetType("namespace.x");
MethodInfo process = type.GetMethod("process");
process.Invoke(null, null);