您现在的位置是:首页 > 文章详情

改善Java代码质量的

日期:2018-07-17点击:317

1.命名规范

包名全小写,类名首字母大写,常量全部大写并用下划线分割,变量采用驼峰命名的方法。注意对于O这个容易混淆要加注释

包名如 com.user  类名如Test  常量如RAND_CONST  变量如  String  userPhone

public class Test4 { public static void main(String[] args){ long i=1l; System.out.println(i+i); } } 这段代码很好的说明问题

2.在定义常量时,一定要确定的定义一个不变量

public static final int RAND_CONST = new Random().nextInt();这个显然是错的,就不是一个确定的常量,

public static final int RAND_CONST = 5;这是对的。

3.三元操作符的类型要一致

你很少用三元操作符吧,我也很少用,三元操作符是if-else的简化方法,是One Line表现,它的性能优于if-else,

int i=80;

String s = String.valueOf(i<100?90:100)这个是对的,类型一致都是int类型

String s1= String.valueOf(i<100?90:100.0)这个是错的,100.0是浮点型了和90类型不一致

4.避免带有变长参数的方法重载

public void calPrice(int price,int... discounts){

float knockdownPrice = price;

for(int discount:discounts){

knockdownPrice = knockdownPrice*dicount/100;

}

}

避免方法名和参数与这个一样

变长参数没用过吧,我也没用过,变长参数是对于可能传入多个值的一种灵活性,那个可变的参数注意要放在参数末尾啊,

并且一个方法只有一个变长参数

5.别让null和空值威胁到变长方法

如果要传个空值到变长方法的那个参数

注意了,空值的类型要给它定义好,因为不传类型的调用者会猜测这个值是什么类型,可能导致内部逻辑乱

如果它是String 类型的话,就传个String类型的空值给它

String[] strs = null;

client.methodA("China",strs);

6.覆盖变长方法也要循规蹈矩,这个我直接没理解,用的不多

7.警惕自增的陷阱,这个就简单了,好好写代码,就不会遇到

count=count++;

如果count初值是0,那么不论条件如何都是0,因为正规的写法是这个count++;

解释一下:count++是个表达式,是有返回值的,它的返回值是自加前的返回值,Java对自加是这样处理的是首先把count拷贝到

一个临时变量区,然后加1,最后返回临时变量区的值。

说了一大堆,注意写代码时规范就行了

8.不要旧语法困扰你,遇到了,就查查别纠结

9.少用静态导入

这个主要是为了阅读代码和维护方便,你引入的太多了,阅读麻烦,不利于维护

10.不要在本类中覆盖静态导入的变量和方法

就是你用的静态类,你在命名时别命名相同了,不然就会错

11.你要序列化的话,那个UID你可千万别随手删了,那个保证是同一个对象的,

12.避免用序列化类在构造方法中为不变量赋值,

如:public Person(){

name="ss";

}这是错的

因为反序列化时,构造函数不会执行

13.避免为final变量复杂赋值,这个是你老老实实用一句话搞定,别玩太多花样没事。

持续更新中。。。。。。

原文链接:https://yq.aliyun.com/articles/625798
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章