我们真的需要Java中的静态最终常量吗?
假设我有以下代码:
public class Test {
public static final int A = 1234;
public static int getA()
{
return 1234;
}
}
Run Code Online (Sandbox Code Playgroud)
您能否就效率方面比较以下两种情况?
Test.A
Test.getA()
假设有一个JIT编译器,效率应该没有明显的差别 - 至少不足以使应用程序的执行速度产生显着差异.
但是,灵活性有明显的增加:在方法中封装值几乎总是好的,因为它允许您更改稍后计算值的方式.
这个规则的一个值得注意的例外是来自数学世界的纯常数:封装访问权限没有多大意义Math.PI,因为这个基本常量的值不可能发生变化,这促使需要切换方法,在程序中获取该值.
| 归档时间: |
|
| 查看次数: |
2996 次 |
| 最近记录: |