如何在不知道类名的情况下使用接口调用方法类

时间:2018-09-27 18:24:28

标签: java interface casting

我是Java的新手,我想从带有接口的实现的Class中调用方法类,而无需知道类名“ ClassA”,它只知道对象c,并且我有2个文件。

文件(1)CobaInterface.java

package cobainterface;

public class CobaInterface {

    public static void main(String[] args) {

        ImplementedClass implementedClass = new ImplementedClass();

        ClassA clsA = new ClassA();
        implementedClass.myMethodFromClassA(clsA);
    }

}

class ClassA{
    public Integer getTwo(){
        return 2;
    }
}

interface MyInterface {
    public void myMethod();

    //here interface
    public void myMethodFromClassA(Object c);
}

文件(2):ImpementedClass.java

package cobainterface;

public class ImplementedClass extends CobaInterface {
    public void myMethodFromClassA(Object c) {
        //System.out.println(c.getTwo()); <- wrong when call method c.getTwo()
    }
}

如果我想在不知道类名的情况下从ClassA调用方法getTwo()怎么办,如上面的代码所述,类名仅从文件(2)知道对象c。感谢您的进步。

0 个答案:

没有答案