摘要:
1. 什么是Java对象序列化 Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取被保存的对象。 阅读全文
摘要:
1. 【强制】避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。 2. 【强制】所有的覆写方法,必须加@Override注解。 说明:getObject()与get0bject()的问题。一个是字母的O,一个是数字的0,加@Override可以准确判 阅读全文
摘要:
1. 【强制】大括号的使用约定。 如果是大括号内为空,则简洁地写成{}即可,不需要换行; 如果是非空代码块则: 1) 左大括号{前不换行。 2) 左大括号{后换行。 3) 右大括号}前换行。 4) 右大括号}后还有else等代码则不换行;表示终止的右大括号后必须换行。 2. 【强制】 左小括号和字符 阅读全文
摘要:
说明:所谓魔法数值,是指在代码中直接出现的数值,只有在这个数值记述的那部分代码中才能明确了解其含义。 魔法数值使代码的可读性大大下降。而且,如果同样的数值多次出现时,到底这些数值是不是带有同样的含义呢,谁也说不清楚。另一方面,如果本来应该使用相同数值的地方,一旦用错了,也很难发现。因此,需要注意以下 阅读全文
摘要:
1. 【强制】不允许任何魔法值(即未经定义的常量)直接出现在代码中。 反例: String key = "Id#taobao_" + tradeId; cache.put(key, value); 魔法数字的例子 int priceTable[] = new int[16]; //ERROR:这个1 阅读全文