《架构之美》中关于编写高效Java的几个技巧

本文摘录自《架构之美》,提供了一系列实用的Java性能优化建议,包括避免过度创建对象、合理使用静态方法、优化switch语句等。同时也强调了良好的设计和清晰的编码往往比专门的优化更为重要。

《架构之美》中提到关于Java性能技巧:
1.优化的第一准则:不要优化。优化的第二准则(仅限于专家),还是不要优化。——Michael A Jackson
和所有的性能技巧一样,下面的技巧是指导方针,不是准则。良好设计和清晰编码的代码几乎总是优于“优化的”代码。
技巧1.创建对象不好。过多的对象尤其是短期对象会导致不好的性能,因为大量对象创建引起频繁的年轻带垃圾收集。
技巧2.静态方法,不会动态分配,更容易产生内联。
技巧3.标签集适度紧凑的switch语句比分散的要快:switch使用两种字节码:tableswitch和lookupswitch,后者慢得多。
技巧4.方法越小越好,从设计(内聚性)和JIT两方面考虑都是好的。
技巧5.Exception应该用于异常情况,而不是错误,VM会优化正常的路径。
技巧6.小心使用装饰器模式.额外间接开销大。
技巧7.对类进行instanceof操作比接口的数组搜索快。
技巧8.最低程度的使用同步,把同步的块减到最小,尽量使用volatile和原子引用。这和设计的思想一致。
技巧9.小心外部库,简单而重要的任务认真考虑内置编码实现。

 

 

回顾07年关于高效率Java的文章,因为JDK的发展从1.4到1.6,jvm的内部优化有了很多改进和变化,所以有些惯例已经不适用了,有些则可能反而导致性能不升反降。

建议参考《高质量JAVA程序设计》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值