在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
对于刚刚入门学习Java编程语言的初学者而言,学习Java的基础语法固然重要,养成良好的编程习惯也是在一开始就需要注意的学习重点。只有在一开始建立好基础的习惯,才能在后期的Java开发中,提高自己的编码水平和效率。在这里小编整理了提高Java开发效率的十个编程好习惯供大家参考,下面一起来看看吧!

1、尽可能的编写整洁的代码
要想让其他人能够读懂你的代码,尽量使用最少的代码来完成任务。遵循DRY(Don’t repeat yourself)的原则,使用明确定义的对象和库,将任务分解成小而简单的代码段。
2、尝试使用单个例如在合适的场合
使用单例可以减轻负荷的负担,缩短加载时间。提高装载效率,但并不是所有的地方都适合一个案例。简单的说,单主要适用于以下三个方面:控制资源的使用,通过线程同步来控制资源的并发訪问;控制实例的产生,以达到节约资源的目的;控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。
3、使用CheckStyle工具规范代码。
其实任何东西我们都希望它能够“自动化”,随着编程经验的提升,大部分编程规范你已经了然于心,但是实际操作的时候,又总是忘这忘那,我们希望一个工具来帮我们自动检测我们的程序是否是符合规范,结构良好的。事实上,任何语言都是有自己的编程规范的,编程规范的制定,十分有利于代码的阅读和潜在Bug风险的降低,比如在Java中,有严格的命名规范。比如在Java中,有严格的文档规范。所以我们需要使用checkstyle插件去自动检测我们的程序是否符合规范。
4、多阅读官方文档。
不要过分依赖教程,要学会看官方文档。凡是能被做成教程的东西,往往已经过时了,最新的技术,最新发布的标准,往往没有现成的教程,你需要去认真阅读官方文档,那里的东西才是最权威的。
5、不要重复代码
尽可能杜绝重复代码,凡是需要用至少两次的代码,给它单独做一个类或函数。举个例子:当我们在Java开发中遇到同一个类中两个函数含有相同的表达式的时候,可以采用Extract Method提取重复的代码使之成为函数,两处函数同时调用提出的函数。
6、应该使用Collection.isEmpty()检测空
使用 Collection.size() 来检测空逻辑上没有问题,但是使用 Collection.isEmpty()使得代码更易读,并且可以获得更好的性能。任何 Collection.isEmpty() 实现的时间复杂度都是 O(1) ,但是某些 Collection.size() 实现的时间复杂度可能是 O(n) 。
正例:
if (collection.isEmpty()) {
...
}
如果需要还需要检测 null ,可采用CollectionUtils.isEmpty(collection)和CollectionUtils.isNotEmpty(collection)。
7、集合初始化尽量指定大小
Java 的集合类用起来十分方便,但是看源码可知,集合也是有大小限制的。每次扩容的时间复杂度很有可能是 O(n) ,所以尽量指定可预知的集合大小,能减少集合的扩容次数。
正例:
int[] arr = new int[]{1, 2, 3};
List<Integer> list = new ArrayList<>(arr.length);
for (int i : arr) {
list.add(i);
}
8、优先使用常量或确定值来调用 equals 方法。
对象的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals 方法。当然,使用java.util.Objects.equals() 方法是最佳实践。
正例:
public void isFinished(OrderStatus status) {
return OrderStatus.FINISHED.equals(status);
}
public void isFinished(OrderStatus status) {
return Objects.equals(status, OrderStatus.FINISHED);
}
9、表达式不要多余括号
对应表达式中的多余括号,有人认为有助于代码阅读,也有人认为完全没有必要。对于一个熟悉 Java 语法的人来说,表达式中的多余括号反而会让代码显得更繁琐。
正例:
return x;
return x + 2;
int x = y * 3 + 1;
int m = n * 4 + 2;
10、最好不用使用split
最好不用使用split,除非是必须的。split因为支持正則表達式,所以效率比較低,假设是频繁的几十。几百万的调用将会耗费大量资源,假设确实需 要频繁的调用split,能够考虑使用apache的StringUtils.split(string,char),频繁split的能够缓存结果。因此,为了提高Java开发效率最好避免使用split。
以上就是提高Java开发效率的十个编程好习惯,大家都记住了吗?以上的十个编程好习可以说是,从事Java开发极其重要的经验总结。如果大家能真正养成上面的好习惯,相信就能编写出更加优雅的代码,并且提高Java的开发效率。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
互联网寒冬之下学Java开发还有优势吗?
互联网行业发展前景并且不明朗,整个互联网都正处在消费互联网向产业互联网过渡的阶段,由于行业壁垒很难打破,从而导致目前大数据等新型技术的落地应用存在一定的困难,但是行业中对高级java开发的需要还是很大的。
10547
2019-08-08 09:50:17
Java面试常见关于多线程的面试题
多线程是Java技术中常用而且相对比较难易理解的一个知识点。而且多线程也是企业实际应用中必备的技术,因此在面试的过程中,面试者经常被问到关于多线程的问题,遇到这些问题大家应该怎么办呢?赶紧恶补一下Java面试常见关于多线程的面试题吧。
7301
2019-09-04 18:50:46
如何成长为Java架构师?Java架构师成长攻略
如何成长为Java架构师?Java架构师的成长攻略大概是这样的,首先需要大家完全掌握Java的基础知识,从Java程序员开始成长为Java架构师。然后在深入了解Java的架构知识,多练习一些架构设计的项目。最后还可以通过网课或其他渠道的学习课程,不断给自己充电,提高自身的职场竞争力。
6545
2024-08-12 13:53:12
Java面试题答疑解惑之数组去重
数组去重是Java面试者常常会遇到的面试题之一。不知道大家有没有想过,为什么面试官总是喜欢询问求职者这个问题?其实,关于数组去重的问题表面上看起来并不难,但是通过面试者对相关问题的回答,可以充分检验出面试者的Java能力水平究竟如何,以及对于考虑问题的思维方式够不够全面。因此,大家千万别觉得面试官问你数组去重的问题,就只是一个简单的问题。
6698
2020-01-10 19:09:11
SpringMVC框架是干什么的?有哪些优点?
目前企业当中有80%的项目使用的都是SpringMVC框架,这么多公司都使用SpringMVC框架来开发项目,SpringMVC框架必然有他的过人之处。今天让我们一起来看看SpringMVC框架是干什么的,有哪些优点。
7109
2020-08-14 14:46:43
