Dem*_*ick 1 java getter-setter
我最近开始制作简单的2D游戏,并遇到了两难 - 使用或不使用getter和setter方法来处理对象的x和y位置.如果我不使用方法,但是直接访问变量会更加清晰,而且对对象的许多方法调用会损害性能.此外,获取和设置位置仍然很简单,所以这里真的不需要封装吗?或者我们是否应始终坚持使用getter和setter方法的约定?
坚持惯例总是更好.此外,JIT将简化操作,以便直接访问字段而不是遍历所有方法堆栈.
它被称为方法内联.
Java VM的Java 2版本在运行时自动内联简单方法.在未优化的Java VM中,每次调用新方法时,都会创建一个新的堆栈帧.创建新的堆栈帧需要额外的资源以及堆栈的一些重新映射,最终结果是创建新的堆栈帧会产生很小的开销.
方法内联通过减少程序调用的方法调用次数来提高性能.Java VM内联代码内联返回常量或仅访问内部字段的方法.
资源:
在同一主题上:
| 归档时间: |
|
| 查看次数: |
1485 次 |
| 最近记录: |