如果parent是interface,那就可以
因为你实际用到是的那个method嘛,而不是parent里的field methodname

解决方案 »

  1.   

    我是想用一个在父类或者接口中没有的函数,而这个函数的名字,参数是由子类通过父类的变量传给接口或父类,然后在仅有父类存在和知道子类的uri时调用,
      

  2.   

    我也Up一下我也Up两下!!!
    ^@^
      

  3.   

    fishbob21(fishbob)
    请问怎么反射?
      

  4.   

    import java.lang.reflect.*;public class TestMothed {
        public TestMothed() {
        }
        public void test() {
            System.out.println("ok.");
        }
        public static void main(String[] args) throws Exception {
            TestMothed testMothed = new TestMothed();
            Class c = Class.forName("xmldoom.TestMothed");
            Method method = c.getMethod("test", null);
            method.invoke(testMothed, null);
        }}
    这个可以
      

  5.   

    import java.lang.reflect.*;public class TestMothed {
        public TestMothed() {
        }
        public void test() {
            System.out.println("ok.");
        }
        public static void main(String[] args) throws Exception {
            TestMothed testMothed = new TestMothed();
            Class c = Class.forName("TestMothed");
            Method method = c.getMethod("test", null);
            method.invoke(testMothed, null);
        }}
    这样
      

  6.   

    不知道这样行不行:
    getParameterTypes()取得参数类型,然后
    public Object invoke(Object obj, Object[] args)调用函数。
      

  7.   

    楼上说的当然行了,jokerjava(冷血) 写的例子过于简单了,没涉及到方法有参数的形式,如果要调用的方法有参数,就必须用public Object invoke(Object obj, Object[] args)将参数传进去,而且利用反射效率极底,不到万不得以,最好不要用.
      

  8.   

    import java.lang.reflect.*;public class TestMothed {
        public TestMothed() {
        }    public void test() {
            System.out.println("ok.");
        }    public void test(String str) {
            System.out.println(str);
        }    public static void main(String[] args) throws Exception {
            TestMothed testMothed = new TestMothed();
            Class c = Class.forName("TestMothed");
            Class[] cs = new Class[1];
            cs[0] = String.class;
            Method method = c.getMethod("test", cs);
            Object param[] = new Object[1];
            param[0] = "asd";
            method.invoke(testMothed, param);
        }}这是带参数的    都让我写了   搂主没得作了  呵