改善Java代码质量的
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变量复杂赋值,这个是你老老实实用一句话搞定,别玩太多花样没事。
持续更新中。。。。。。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java 基础 之 常量
http://www.verejava.com/?id=16992564786810 /* java中常量分为以下几种 1. 整型常量 2. 浮点数常量 3. 字符常量 4. 布尔型常量 5. 字符串常量 */ public class FinalVariable { public static void main(String[] args) { //常量的定义:不可以改变的变量 //1. 整型常量 final int UP=0; final int DOWN=1; final int LEFT=2; final int RIGHT=3; System.out.println(UP); System.out.println(DOWN); System.out.println(LEFT); System.out.println(RIGHT); /* 注意: 1. 常量的定义一般用大写 */ //2. 浮点数常量 final float PI=3.14f; System.out.println(PI); //3. 布尔常量 final boolean RUN=true; System.o...
- 下一篇
SpringBoot-11-之从本地到线上
一、本地:[注]现在对于已经有了服务器和域名(已备案)的你,可以继续阅读 1.打包项目为jar 打包项目 2.备份数据库 备份数据库:mysqldump -uroot -p密码 toly>toly.sql 二、服务器: [1]将数据库拷贝到服务器 [2]进入mysql后创建同名数据库:mysql> create database toly [3]使用数据库:mysql> use toly [4]导入数据库:mysql> source 路径名\toly.sql 数据库恢复 运行:需要java环境 java -jar 文件路径 三、访问:把一直以来的localhost换成域名就行了
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装