有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java方法。调用它可以接受的参数?

我有字符串形式的方法名,必须动态调用。 方法名。调用(对象、参数) 在上述格式中,对象应该是什么? 它应该始终由createNewInstance方法创建吗? 如何使用已构造的对象来代替它


共 (1) 个答案

  1. # 1 楼答案

    what should the object be?

    如果方法是static,那么object参数应该是null

    如果该方法不是static,那么object参数应该是要调用该方法的对象,即将成为该方法内this值的对象

    Should it be always creater by createNewInstance method?

    没有

    How can I use an already constructed object instead of it?

    将“已构造对象”作为object参数值


    示例

    通常,您会调用如下方法:

    myObj.foo("bar");
    

    要使用反射进行相同的调用:

    Method m = myObj.getClass().getMethod("foo", String.class);
    m.invoke(myObj, "bar");