Java 单例,这个用例有什么替代方案吗?

Java singleton, any alternatives for this usecase?

提问人:cksrc 提问时间:10/17/2023 最后编辑:Federico klez Cullocacksrc 更新时间:10/17/2023 访问量:41

问:

我正在提供一个 Java 服务,负责抽象出与 TCP 服务器的连接。这个想法是避免在调用时打开新连接。connect()

对我来说,这是单例模式用法的定义。尽管如此,鉴于围绕它的批评,我想问一下是否有其他更好和有意义的替代方案,特别是针对此类情况。

public class TCPConnectionService {
    private static TCPConnectionService instance;
    private final TCPConnection connection;
    private TCPConnectionService() {
        this.connection = connect();
    }
    public synchronized static TCPConnectionService getInstance() {
        if (instance == null) {
            instance = new TCPConnectionService();
        }

        return instance;
    }
    private TCPConnection connect() {...}
}
Java 单例

评论


答: 暂无答案