gpt4 book ai didi

java - 在java中创建昂贵的对象

转载 作者:行者123 更新时间:2023-12-01 18:10:57 26 4
gpt4 key购买 nike

我想创建一个名为 A 的对象,具有以下属性。

public  class A {

private Object data;

public A(Object data) {
this.data = data;
}

}

如何设置此对象,以便如果两个实例具有相同的数据值,则它们引用同一个确切的实例?我正在创建一个非常昂贵的对象,并且不想重复。

最佳答案

您想要的称为实例控制:您希望以受控方式创建实例。

您可以使用工厂模式来实现这一点。拥有一个工厂来保存映射到昂贵对象的唯一值的缓存。禁止使用除工厂之外的任何其他方式创建对象。当从工厂请求一个实例时,检查它是否在缓存中,如果是则返回它。否则,创建一个新对象,将其放入缓存中,然后返回。这是总体思路。

关于java - 在java中创建昂贵的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33045652/

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