教育宝
请输入机构名称或课程名称

java码代码中的一些经验和技巧

学习经验 https://www.jiaoyubao.cn/ | 手机站

2021年03月25日 14:53:19

对于final的使用,在数组上其实很没意义,数组的引用不可再变,但是成员仍然可以变化,但是,此时数组内容也不会变,只不过变化的那个成员不再属于数组了而已。

  今天小编跟大家分享关于“java码代码中的一些经验和技巧”的相关内容,希望对大家有所帮助。
  1、 在循环中不要新建引用,放到循环外建立,循环内使用,虽然对象是存在堆里面,但引用会压入栈,So……
  2 、同样是循环,在设立循环条件时,不要以重复访问对象为条件,缓存进栈,虽然是个小细节,养成习惯总是好的,例如:
  3、 对于final的使用,在数组上其实很没意义,数组的引用不可再变,但是成员仍然可以变化,但是,此时数组内容也不会变,只不过变化的那个成员不再属于数组了而已。
  4、 继续上面,对于经常使用的常量请加上final,JVM在运行时会缓存final变量,并且在多线程的共享不需要增加同步开销,不可变性相对就提高了安全性。
  5、 说到多线程,对于同步synchronized关键字,尽量使用同步代码块,不要同步方法,synchronized实现原理自行百度,总之synchronized同步的代码越少越好。
  6、 如果仅仅是一个变量的同步请不要使用同步代码块,直接用volatile修饰变量即可。
  7、 继续线程安全,在我们平时码代码是时,除非明确要求使用线程安全类,不然别去使用,线程安全类就是增加了同步开销,以StringBuffer和StringBuilder为例,前者属于线程安全,但实际情况下我们使用需要线程安全的情况微乎其微(至少我没遇到),所以StringBuilder更为效率。
  8、 继续StringBuilderx相关,在字符串拼接,不要直接使用 拼接,此种方法效率差,而字符串的concat方法实质就是现分解为char数组,在复制重新生成字符串,效率只比 好一点,StringBuilder和StringBuffer通常选取前者常为拼接字符串的优先考虑。
  9、 接上面,String 重载了 和 =,但是在字符串用 连接时,实质JVM运行也是编译了一个临时的StringBuilder来执行append,也就是说,即使你用了 ,其实还是用的StringBuilder,只不过是由JVM代替了你使用而已。
  10、 在循环内除非必要,否则不要处理异常,原因在于异常基类Throwable中的public synchronized native Throwable fillInStackTrace(),如你所见,是个同步方法,So……。
  11、 接上,尽量不要使用try-catch处理业务流程,虽然看起来更OOP,但是实质上是try-catch的性能处理上肯定不如传统的if-else,虽然看起来只是一点点性能的浪费。

  12、 对于确定的死循环,for(;;)优于while(true),原因在于前者编译后执行的汇编代码更少。
  13、 在传统的大小判断上,尽量直接使用(x>y)而非(x-y>0),试想一下x=MAX,y=MIN,如果相减是否会溢出呢?
  14、 foreach语法能够遍历任何实现了Iterable接口的类。
  15、 多看书吧,视频可能一个简单的知识点拖了一大截才讲到关键,看书几下就看明白了,无论看书还是视频,重要的不是看,是练。
  16、 《Java编程思想》真的是本很不错的书(机械工业好),相比于国内的某些书,这本书让很好,每重看一遍,总有不一样的领悟。
  17、 泛型有坑(万恶的泛型擦除),但泛型好用,特别是在编写自己的类库的时候,泛型总能让你的类库突出某层局限。

java码代码中的一些经验和技巧,如果你喜欢这篇文章,请将其保留版权转载。我的微信号(18560125702)欢迎来咨询,10年教培行业工作经验,如果你在JAVA认证方面有疑问,请与我联系,我将为您提供全面专业的选课帮助。返回教育宝头条

java学习

分享到:

月嫂给宝宝换尿布的小技巧

上一篇

月嫂给宝宝换尿布的小技巧

产后坐月子月嫂应该注意这些问题

下一篇

产后坐月子月嫂应该注意这些问题

【免责声明】本文仅代表作者本人观点,与教育宝无关。教育宝对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何保证。请读者仅作参考,特此声明!当您认为您的知识产权或其他合法权益被侵犯,或者页面信息有误需要纠正或者删除,请联系客服或致电400-601-2788。
推荐资讯
  • 北京JAVA培训哪家好 5大北京JAVA培训机构推荐

    北京JAVA培训机构有很多,但是很多人不知道北京JAVA培训哪家好,如何选择正确且靠谱的JAVA培训机构就成了一个非常重要的事情,今天小编就和大家一起来看看该如何选择一家好的JAVA培训机构。

    2018年10月23日 13:20:23
  • 济南JAVA培训哪家好 5大济南JAVA培训机构推荐

    济南JAVA培训机构有很多,但是很多人不知道济南JAVA培训哪家好,如何选择正确且靠谱的JAVA培训机构就成了一个非常重要的事情,今天小编就和大家一起来看看该如何选择一家好的JAVA培训机构。

    2018年10月31日 14:38:29
  • 南京JAVA培训哪家好 5大南京JAVA培训机构推荐

    南京JAVA培训机构有很多,但是很多人不知道南京JAVA培训哪家好,如何选择正确且靠谱的JAVA培训机构就成了一个非常重要的事情,今天小编就和大家一起来看看该如何选择一家好的JAVA培训机构。

    2018年11月18日 09:09:48
  • 深圳JAVA培训哪家好 5大深圳JAVA培训机构推荐

    深圳JAVA培训机构有很多,但是很多人不知道深圳JAVA培训哪家好,如何选择正确且靠谱的JAVA培训机构就成了一个非常重要的事情,今天小编就和大家一起来看看该如何选择一家好的JAVA培训机构。

    2018年11月20日 15:39:20
  • 广州JAVA培训哪家好 5大广州JAVA培训机构推荐

    广州JAVA培训机构有很多,但是很多人不知道广州JAVA培训哪家好,如何选择正确且靠谱的JAVA培训机构就成了一个非常重要的事情,今天小编就和大家一起来看看该如何选择一家好的JAVA培训机构。

    2018年11月21日 11:34:26