这个例子是高度做作的,所以请耐心等待。
我有两个 Java 类Chair
和Desk
,它们来自第三方(即我无法更改它们)。
public class Chair {
//...
}
public class Desk {
//...
}
对于这些类中的每一个,我都需要运行一个方法doWork()
,它取决于DatabaseService
. 我的方法是创建一个OfficeFurniture
为每个类实现接口的适配器。
public class ChairAdapter implements OfficeFurniture {
//...
}
public class DeskAdapter implements OfficeFurniture {
//...
}
public interface OfficeFurniture {
public doWork(DatabaseService databaseService);
}
最后,问题是:是传递调用更好,还是传递DatabaseService
到doWork()
构造函数中ChairAdapter
并DeskAdapter
在类字段中存储一个实例?还是有其他更好的方法?