![]() |
1
3
我想期末考试也可以问同样的问题:“ 如果我知道我不会通过代码触摸变量,为什么要声明变量为最终变量? “ 问题是,你不是唯一接触或阅读代码的人。给出正确的语义对于一个可读和可维护的代码是必不可少的。您可能知道服务和/或控制器是单例的,所以不需要将变量放在静态的内部,但是这样您就显式地声明了它。 添加:
我引用 狗屎 评论只是为了让答案更完整。有一个实际的问题,使记录器静态地址:在创建期间记录。 跟进:
假设你的班级不是单身。在这个场景中,日志记录器必须只记录。它与对象无关,它是一个类属性。这意味着,如果实例化一个或一千个对象,记录器就不会改变。所以您可以在所有对象之间共享它,从而使它成为静态的。 让我们假设你的班级是单身。总是只有一个实例。静态仍然有用吗?从实际的角度来看,没有。您只有一个类实例,所以只有一个记录器,不管是静态的还是非静态的。但是,如果您声明它是静态的,那么您将声明希望记录器是类的属性,而不是该类的对象的属性。您正在明确您的意图和设计,从而提高代码的质量。 希望这能回答你的问题。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 4 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 4 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |