例如,我想将一些类分组到一个 jar 库中,这些类都符合我的自定义接口(interface)的定义。由于我无法编辑 jar 内的类来实现我的接口(interface),是否有其他方法可以使用这些类,就好像它们实现了我的接口(interface)一样?
示例:我有不可编辑的类 A
和 B
。我在另一个类中有一个静态方法,它接受属于我的接口(interface) I
的对象。如何传入 A
和 B
对象而不使该方法接受所有 Object
对象。我想为 A
和 B
提供只有他们才能拥有的新功能。
最佳答案
根据您的编辑并根据我的评论:创建一个类来实现您的接口(interface) I 并充当类 A 和 B 的包装器。这是 Facade Design Pattern 。这是一个非常基本的简单代码示例:
public interface I {
void methodFromExternalAClass();
void methodFromExternalBClass();
}
public class MyClass implements I {
@Override
public void methodFromExternalAClass() {
new A().someMethod();
}
@Override
public void methodFromExternalBClass() {
new B().someMethod();
}
}
关于java - 实现除类签名之外的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17713619/