我想设计一个接口,其中有一个方法是
public void save(Object o);
这个方法中的参数不一定是哪个类,可能是save(A a),也可能是(B b),不知道可以实现吗,请高手指点一下
------解决方案--------------------
public interface Saver <T> {
void save( <T> t);
}
------解决方案--------------------
jdk1.5开始出现了泛型,用泛型便可解决你的问题,如楼上所示
------解决方案--------------------
嗯,JDK5.0才可以 用范型
------解决方案--------------------
用oop的多态或者泛型,都可以
------解决方案--------------------
饭型
------解决方案--------------------
interface In1{
public void save(Object o);
}
public class ImplementsIn1 implements In1{
public void save(Object o) {
if(o instanceof B) {
// do things
}
}
}
------解决方案--------------------
修改设计吧
如果要写一个工具类,那把save(A a),(B b),放到同一个接口里,
如果要不同的类实现不同的保存方法(就是以后现加个C类而不用修改之前的代码),那把方法改为save(),然后调用o.save();o为a或b,或者是以后增加的c,d,e ...