代码优化,程序员必须懂得一门学问,简洁漂亮的代码给人的感觉就像如沐清风,一堆垃圾的代码给人的感觉就像吃了翔一样的难受。所以不管是程序员还是准程序员,养成良好的代码优化习惯都是必须要养成的。千锋JavaEE课程大纲良心出品,缔造java开发精英。Java常用于工业级应用开发,相比其他,JavaEE以专业性和强大的规范性独受企业青睐!别让别人看见你的代码时间想到的是删了从写而不是代码优化。
首先,我们要搞清楚优化代码的目的。
减小代码的体积;提高代码运行的效率;代码优化具体细节(只说Java的,小编就是Java程序员)。
1.尽量指定类、方法的final修饰符。
Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,具体参见Java运行期优化。此举大概能2.够使性能平均提高50%。
3.尽量重用对象特别是String对象的使用,出现字符串连接时应该使用StringBuilder/StringBuffer代替。
4.尽可能使用局部变量。
5.及时关闭流:进行数据库连接、I/O流操作,在使用完毕后,及时关闭以释放资源。
6.尽量减少对变量的重复计算:明确一个概念,对方法的调用,即使方法中只有一句语句,也是有消耗的,包括创建栈帧、调用方法时保护现场、调用方法完毕时恢复现场等。
7.尽量采用懒加载的策略,即在需要的时候才创建。
8.慎用异常
异常对性能不利。抛出异常首先要创建一个新的对象,Throwable接口的构造函数调用名为fillInStackTrace()的本地同步方法,fillInStackTrace()方法检查堆栈,收集调用跟踪信息。只要有异常被抛出,Java虚拟机就必须调整调用堆栈,因为在处理过程中创建了一个新的对象。异常只能用于错误处理,不应该用来控制程序流程。
9.不要在循环中使用try…catch…,应该把其放在外层。
10.如果能估计到待添加的内容长度,为底层以数组方式实现的集合、工具类指定初始长度。
11.当复制大量数据时,使用System.arraycopy()命令。
12.乘法和除法使用移位操作:移位操作虽然快,但是可能会使代码不太好理解,因此好加上相应的注释。
13.循环内不要不断创建对象引用。
14.基于效率和类型检查的考虑,应该尽可能使用array,无法确定数组大小时才使用ArrayList。
15.尽量使用HashMap、ArrayList、StringBuilder,除非线程安全需要,否则不推荐使用Hashtable、Vector、StringBuffer,后三者由于使用同步机制而导致了性能开销。
16.不要将数组声明为public static final。
学习就像逆水行舟,学习java是这样,毕竟Java已经雄踞编程语言排行已经十几年了,但正是这十几年,也使得Java各方面的体系也比其他语言加完整和,有什么不懂的问题很容易就能到到解决。
迭迅速的时代,JavaEE作为一个异类身处其中,从问世起便立于不败之地,除了这样描述,实在想不出好的形容词,JavaEE到处都是规范,为整个行业规范大方向,无论行业哪个环节哪个方向快速发展,都将成为JavaEE进步的助力!
相关文章
了解千锋动态
关注千锋教育服务号
扫码关注千锋互联
身边的移动开发导师