十年老司机总结的Java代码优化
代码优化的目标是:
1、减小代码的体积
2、提高代码运行的效率
3、打发时间
本文的内容有些来自网络,有些来自平时工作和学习,当然这不重要,重要的是这些代码优化的细节是否真真正正地有用。那本文会保持长期更新,只要有遇到值得分享的代码优化细节,就会不定时地更新此文。
(1)尽可能使用局部变量
调用方法时传递的参数以及在调用中创建的临时变量都保存在栈中,速度较快,其他变量,如静态变量、实例变量等,都在堆中创建,速度较慢。另外,栈中创建的变量,随着方法的运行结束,这些内容就没了,不需要额外的垃圾回收。
(2)尽量在合适的场合使用单例
使用单例可以减轻加载的负担、缩短加载的时间、提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:
- 控制资源的使用,通过线程同步来控制资源的并发访问
- 控制实例的产生,以达到节约资源的目的
- 控制数据的共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信
(3)尽量重用对象
特别是String对象的使用,出现字符串连接时应该使用
StringBuilder/StringBuffer代替。由于Java虚拟机不仅要花时间生成对象,以后可能还需要花时间对这些对象进行垃圾回收和处理,因此,生成过多的对象将会给程序的性能带来很大的影响。
1.使用局部变量可避免在堆上分配
2.减少变量的作用范围3.访问静态变量直接使用类名
3.不要在多线程下使用同一个Random
最后,让我们一起成长一起进步一起加油