您的位置:首页 > 编程语言 > Java开发

1_java开发通用的方法和准则

2018-03-26 18:14 211 查看

建议1:不要在常量和变量中出现易混淆的字母

基本编码规范:
包名全小写,类名首字母全大写,常量全部大写并用下划线分隔,变量用驼峰命名法命名;
注意:字母“l”作为长整型标志时务必大写,字母“o”则增加注释;

建议2:莫让常量蜕变成变量

public class Client {
public static void main(String[] args) {
System.out.println(" 常量会变哦:" + Const.RAND_CONST);
}
/* 接口常量 */
interface Const{
// 这还是常量吗?
public static final int RAND_CONST = new Random().nextInt();
}

建议3:三元操作符的类型务必一致

public class Client {
public static void main(String[] args) {
int i = 80;
String s = String.valueOf(i<100?90:100);
String s1 = String.valueOf(i<100?90:100.0);
System.out.println(" 两者是否相等 :"+s.equals(s1));
}
}

运行结果是 :“两者是否相等 :false”

建议4:警惕自增的陷阱

public class testDemo {
public static void main(String[] args) {
int i = 0;
for (int j = 0; j <= 10; j++) {
i = i++;
}
System.out.println("i = " + i);
}
}
i = 0

Process finished with exit code 0

建议5:break 万万不可忘

switch case语法break不能忘

建议6:不要只替换一个类

关于常量接口(类)我们来看一个例子,首先定义一个常量类:
public class Constant {
// 定义人类寿命极限
public final static int MAX_AGE = 150;
}
public class Client {
public static void main(String[] args) {
int i = 80;
String s = String.valueOf(i<100?90:100);
String s1 = String.valueOf(i<100?90:100.0);
System.out.println(" 两者是否相等 :"+s.equals(s1));
}
}

/* 接口常量 */
interface Const{
// 这还是常量吗?
public static final int RAND_CONST = new Random().nextInt();
}

public class Client {
public static void main(String[] args) {
System.out.println(" 常量会变哦:" + Const.RAND_CONST);
}

public class Client {
public static void main(String[] args) {
System.out.println(" 人类寿命极限是:" + Constant.MAX_AGE);
}
}
原因是:对于 final 修饰的基本类型和 String 类型,编译器会认为它是稳定态(Immutable
Status),所以在编译时就直接把值编译到字节码中了,避免了在运行期引用(Run-time
Reference),以提高代码的执行效率。针对我们的例子来说,Client 类在编译时,字节码中
就写上了“150”这个常量,而不是一个地址引用,因此无论你后续怎么修改常量类,只要
不重新编译 Client 类,输出还是照旧。
而对于 final 修饰的类(即非基本类型),编译器认为它是不稳定态(Mutable Status),
在编译时建立的则是引用关系(该类型也叫做 Soft Final),如果 Client 类引入的常量是一个
类或实例,即使不重新编译也会输出最新值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐