假设我有一个带有.Start()方法的对象。 我想通过在控制台中键入方法来调用方法,就像这个“object.Start()”,它应该调用.Start()方法。用字符串对象调用方法
0
A
回答
1
class Program
{
static void Main(string[] args)
{
var obj = new object(); // Replace here with your object
// Parse the method name to call
var command = Console.ReadLine();
var methodName = command.Substring(command.LastIndexOf('.')+1).Replace("(", "").Replace(")", "");
// Use reflection to get the Method
var type = obj.GetType();
var methodInfo = type.GetMethod(methodName);
// Invoke the method here
methodInfo.Invoke(obj, null);
}
}
+0
我可以使用参数吗? –
+0
是的,在methodInfo.Invoke()而不是为第二个参数传递'null',您可以传递方法参数的对象数组。所以如果你想通过“ABC”和123,你可以用methodInfo.Invoke(obj,new object [] {“ABC”,123})来调用它。 – Mangist
+0
啊谢谢。和obj中的“obj.GetType();”是包含该方法的对象吗? –
相关问题
- 1. 如何使用字符串调用对象的方法?
- 2. 将JavaScript字符串转换为对象方法并调用它?
- 3. 从C++中的类指针对象调用方法(字符串)
- 4. 调用对象的方法,该方法的名字只有字符串
- 5. 调用使用字符串的方法
- 6. 用字符串调用php方法
- 7. 不可调用的字符串对象
- 8. 调用每个字符串对象
- 9. 视为字符串对象方法
- 10. C++从字符串调用方法
- 11. 通过字符串调用方法?
- 12. Angularjs +字符串调用方法
- 13. 基于字符串的调用方法
- 14. 由字符串调用的jQuery方法?
- 15. 调用方法不返回字符串
- 16. 按字符串调用方法
- 17. 来自字符串的调用方法
- 18. 基于字符串调用方法
- 19. 与字符串参数重载方法不会被调用,与对象参数调用该方法,而不是
- 20. 调用方法对象
- 21. 对象的调用方法
- 22. 调用对象 - 方法
- 23. 将字符串转换为“方法” - 用于类方法调用
- 24. 从调用的对象调用方法
- 25. 如何使用对象方法连接字符串?
- 26. 为什么配置方法不适用于字符串对象?
- 27. 将字符串转换为对象的通用方法
- 28. 使用方法将JSON字符串转换为对象
- 29. 如何使用字符串作为对象方法?
- 30. 对象使用的equals()的字符串方法
什么问题? – Kinetic
他问如何调用他输入到控制台的对象的方法。所以如果我输入“object.Run()”,它会调用他的对象的Run方法。 – Mangist