gpt4 book ai didi

java - 有没有办法在 Java 中按需初始化对象?

转载 作者:行者123 更新时间:2023-11-29 05:58:30 25 4
gpt4 key购买 nike

考虑包含超过一千个属性的理论工厂类(模型,例如,在 MVC 项目中)。

工厂模式用于显示选定关卡功能的场景快照(在类似游戏的项目中)。工厂必须将所需的组件和模型传递给场景。

模型和组件可以被任何场景复用,但每个场景只能初始化一次(2个场景玩deals是不可能的)。

所以,我的问题是:

考虑到我不需要每个组件,我不必初始化上千个属性(因为这太慢了),我如何实例化组件以传递给场景,只有当我需要它时?

我不想为每个工厂创建一千个工厂(抽象工厂模式),我不想在工厂本身中初始化对象,因为对象可以重复使用,我想避免复制/粘贴。

有没有办法在 Java 中按需初始化对象?

我不想收到“如果你有一千个属性,这是一个糟糕的概念”的答案,我知道所有这些,但我需要处理一个旧系统,我想减少内存使用.

最佳答案

没有内置的,没有。

我已经使用 AOP 完成了一些惰性初始化技巧,例如,一旦第一次引用某个属性,就运行初始化。这可以仅针对长时间运行的初始化、对象的所有属性、任意子集等根据需要完成。

不需要使用 AOP 来完成,它可以通过普通的 Java 代码来完成——但是如果 Java 代码已经被编写,来自你无法控制的生成器,等等,这可能会产生问题。

关于java - 有没有办法在 Java 中按需初始化对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11109392/

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