gpt4 book ai didi

java - 使用局部变量还是全局变量更好

转载 作者:太空狗 更新时间:2023-10-29 15:32:17 26 4
gpt4 key购买 nike

使用局部变量还是全局变量更好?

假设谈论 2000 多行 android(java) 服务类,所有服务都在处理“请求”对象和类似的共享对象。

如果我将所有内容都放在本地(保留在函数内部),我每次都需要传递很多变量,或者多次重写同一个函数。我需要确保对象和子对象也不为空。

如果我将一些变量设置为全局变量(跨类),我可以共享它们,跨函数使用它们。我认为这会让一切变得更容易。

在函数内部定义变量或全局定义变量的优点和缺点是什么。在实践中和理论上(可读性等)。

有推荐的方法吗?

谢谢。

最佳答案

总是更喜欢本地而不是全局。如果您需要将数据作为多个参数传递,那就这样吧。至少你明确地说出你的函数依赖什么数据。参数太多当然是个问题,但将其中一些作为全局参数卸载并不是解决办法。

如果您依赖全局变量,则可能不清楚某些数据的来源。如果全局变量是可变的,那么一旦您开始尝试调试一个难题,您就会手头一团糟,因为当某些全局变量被修改时它可能并不明显。

请注意,不可变常量全局变量也不错。如果您有一个在许多函数中都需要的常量(例如 PI),那么将其设为全局是有意义的。不可变常量不会受到上述缺点的影响,因为它们无法更改。

关于java - 使用局部变量还是全局变量更好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45291651/

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