【发布时间】:2014-04-30 13:30:44
【问题描述】:
我有一个实现两个接口的类。其中一个接口在第二方 jar 中定义,另一个接口直接在我的代码中定义。
现在我需要将一个对象传递给仅实现我在代码中定义的接口的第三方。我怀疑这是否可以将我的对象向下转换为我定义的接口,甚至我向下转换,这个第三方仍然需要第二方库,因为在内部我传递的类仍然保留对第二方 jar 中定义的接口的引用.
为了可视化场景,一些代码......
我的代码中的接口:
public interface MyInterface {}
secondparty.jar 中的接口:
public interface SecondpartyInterface {}
我的对象:
public MyObject implements MyInterface, SecondpartyInterface {}
现在第三方在我的代码中调用了一个方法,应该是这样的:
private MyObject object;
public MyInterface getObject() {
return (MyInterface)object;
}
第三方的 my.jar 仅包含 MyInterface。这个工作还是第三方也需要第二方的罐子?
谢谢。
【问题讨论】: