gpt4 book ai didi

java - 选择何时实例化类

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

我最近为一项作业编写了一个类,在该类中我必须将名称存储在 ArrayList 中(在 Java 中)。我将 ArrayList 初始化为实例变量 private ArrayList<String> names .后来当我根据解决方案检查我的工作时,我注意到他们已经在 run() 中初始化了 ArrayList。方法代替。

我考虑了一下,觉得这可能是一种品味问题,但一般来说,在这种情况下人们会如何选择呢?是占用内存少还是什么?

PS 我喜欢 Ruby 中以 @ 符号开头的实例变量:它们更可爱。

(元问题:这个问题的标题是什么更好?)

最佳答案

用伟大的 Knuth 的话来说“过早的优化是万恶之源”。

只需担心您的程序运行正常并且没有错误。这比以后难以调试的模糊优化重要得多。

但要回答你的问题——如果你在类成员中初始化,内存将在代码中第一次提到你的类时分配(即当你从它调用一个方法时)。如果您在方法中进行初始化,则内存分配会在稍后调用此特定方法时发生。

所以就只是后面初始化的问题了。。。业界称之为lazy initialization。

关于java - 选择何时实例化类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/292363/

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