我已经定义了这样的界面:
public interface InterfaceA {
String getMyString();
}
我有两个实现该接口的类:
public class MyClassA implements InterfaceA {
@Override
public String getMyString(){
return "A";
}
}
public class MyClassB implements InterfaceA {
@Override
public String getMyString(){
return "B";
}
}
我要做的是创建一个接受实现InterfaceA
作为参数的对象并调用其getMyString method
的方法。这是一些伪代码,说明了我要完成的任务:
public String getStringTest(T implements InterfaceA){
return T.getMyString;
}
答案 0 :(得分:6)
public String getStringTest(InterfaceA myvalue){
return myvalue.getMyString();
}
答案 1 :(得分:4)
您可以直接将接口指定为类型。这意味着实现此接口的类中的任何对象都可以作为参数传递:
public String getStringTest(InterfaceA t){
return t.getMyString();
}
答案 2 :(得分:0)
它被称为包装器,可以产生装饰器或适配器模式。