gpt4 book ai didi

java - 适配器设计模式 - 方法调用或构造函数中的依赖关系?

转载 作者:行者123 更新时间:2023-11-29 05:59:04 24 4
gpt4 key购买 nike

这个例子是高度人为的,所以请耐心等待。

我有两个 Java 类,ChairDesk,它们来自第三方(即我无法更改它们)。

public class Chair {
//...
}

public class Desk {
//...
}

对于其中的每一个类,我都需要运行一个方法 doWork(),它依赖于 DatabaseService。我的方法是创建一个适配器,它为每个类实现 OfficeFurniture 接口(interface)。

public class ChairAdapter implements OfficeFurniture {
//...
}

public class DeskAdapter implements OfficeFurniture {
//...
}

public interface OfficeFurniture {
public doWork(DatabaseService databaseService);
}

最后,问题:是在 doWork() 调用中传递 DatabaseService 更好,还是在 ChairAdapter 的构造函数中传递它更好> 和 DeskAdapter 并在类字段中存储一个实例?或者还有其他更好的方法吗?

最佳答案

视情况而定,适配器的客户端是否应该知道有关数据库服务的任何信息?可能不是,所以你把它放在构造函数中。如果客户端必须了解一些关于数据库服务的信息,那么传递它会更好。

关于java - 适配器设计模式 - 方法调用或构造函数中的依赖关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10858557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com