Kev*_*vik 12 java getter setter android
当我学习Java标准版时,getter和setter函数经常用于隐藏变量并减少对它们的直接访问.有几个消息来源告诉我,在Android中你不应该使用这些函数,只能直接修改变量.原因是在Android中使用getter和setter时,由于开销导致性能下降.导致更多内存使用并减慢系统速度.
有没有道理呢?如果有,为什么使用getter和setter的性能损失?
Vin*_*nay 9
截至此处发现的使用getter和setter 的文档在android中是一个坏主意.正如它所说,
这对Android来说是一个坏主意.虚拟方法调用比实例字段查找要昂贵得多.遵循常见的面向对象编程实践并在公共接口中使用getter和setter是合理的,但在类中,您应该始终直接访问字段.
了解更多有关性能在这里.
hun*_*ngr 7
根据谷歌android团队提供的性能提示:
没有JIT,直接字段访问速度比调用一个简单的getter快约3倍.使用JIT(直接字段访问与访问本地一样便宜),直接字段访问比调用一个简单的getter快约7倍.
但是我同意一个好的编码实践更重要,团队也提到:
请注意,如果您正在使用ProGuard,那么您可以充分利用这两个领域,因为ProGuard可以为您提供内联访问器.
因此我认为使用getter和setter是可以的;)
参考
归档时间:
13 年,5 月 前
查看次数:
3026 次
最近记录: