JAVA方法参数和接口

Joh*_*ane 1 java interface

我一直在努力解决这个问题.我有一个这样定义的接口:

public interface SomeInterface {
    String someMethod();
}
Run Code Online (Sandbox Code Playgroud)

这将由许多模型类实现,例如

public class SomeClass implements SomeInterace {

    ...
    @Override
    public String someMethod(){
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

最后我有一个需要调用doSomething方法的第3类,记住我有多个符合SomeInterface的模型.所以我将方法定义为:

public class SomeUsefulClass {
    public void doSomethingCool(Class<SomeInterface>aParam) {
        //How do I specify aParam.someMethod(); A cast doesn't work
    }
}
Run Code Online (Sandbox Code Playgroud)

Tka*_*gen 6

public void doSomethingCool(SomeInterface aParam) {
     aParam.someMethod(); 
}
Run Code Online (Sandbox Code Playgroud)