当前位置: 首页 / 技术分享 / 正文
好程序员Java培训分享Java学习之代码优化

2020-09-24

  好程序员Java培训分享Java学习之代码优化,代码优化,程序员必须懂得一门学问,简洁漂亮的代码给人的感觉就像如沐清风,一堆垃圾的代码给人的感觉就像吃了翔一样的难受。所以不管是程序员还是准程序员,养成良好的代码优化习惯都是必须要养成的。好程序员JavaEE课程大纲良心出品,缔造Java开发精英。Java常用于工业级应用开发,相比其他,JavaEE以专业性和强大的规范性独受企业青睐!别让别人看见你的代码diyi时间想到的是删了从写而不是代码优化。

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.乘法和除法使用移位操作:移位操作虽然快,但是可能会使代码不太好理解,因此zuihao加上相应的注释。

  13.循环内不要不断创建对象引用。

  14.基于效率和类型检查的考虑,应该尽可能使用array,无法确定数组大小时才使用ArrayList

  15.尽量使用HashMapArrayListStringBuilder,除非线程安全需要,否则不推荐使用HashtableVectorStringBuffer,后三者由于使用同步机制而导致了性能开销。

  16.不要将数组声明为public static final

  学习就像逆水行舟,学习Java更是这样,毕竟Java已经雄踞编程语言排行diyi已经十几年了,但正是这十几年,也使得Java各方面的体系也比其他语言更加完整和先进,有什么不懂的问题很容易就能到到解决。

  更迭迅速的时代,JavaEE作为一个异类身处其中,从问世起便立于不败之地,除了这样描述,实在想不出更好的形容词,JavaEE到处都是规范,为整个行业规范大方向,无论行业哪个环节哪个方向快速发展,都将成为JavaEE进步的助力!

好程序员公众号

  • · 剖析行业发展趋势
  • · 分享大厂面试心得
  • · 汇聚企业项目源码
  • · 下载全套高精尖教程

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2020-11-16(北京)

    预约报名

    开班时间:2020-12-07(深圳)

    预约报名
  • 大数据+人工智能 <高端班>

    开班时间:2020-11-16(深圳)

    预约报名

    开班时间:2020-11-09(北京)

    预约报名
  • JavaEE分布式开发 <高端班>

    开班时间:2020-12-07(北京)

    预约报名

    开班时间:2020-07-20(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2020-07-20(上海)

    开班盛况

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2019-07-22(北京)

    开班盛况

    开班时间:2019-07-15(深圳)

    开班盛况
在线咨询
免费试听
入学教程
立即报名

Copyright 2011-2020 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公安网11010802011455号