2、使用本地方法
不 要 吝 惜 使 用
String.indexOf(), String.lastIndexOf() 等 特 殊 实 现 的 方 法 (specialty
methods)。这些方法都是使用 C/C++实现的
3、使用实现类比接口好
1
Map myMap1 = new HashMap(); HashMap myMap2 = new HashMap();
调用一个接口的引用会比调用实体类的引用多花费一倍的时间
4、不用 getter 和 setter
应该直接访问变量
5、将成员变量缓存到本地
2
for (int i = 0; i< this.mCount; i++) dumpItem(this.mItems[i]);
最好改成这样:
3
int count = this.mCount; Item[] items = this.mItems;
4
for (int i = 0; i< count; i++) dumpItems(items[i]);
另外,永远不要在
for 的第二个条件中调用任何方法
6、给常量加上 final
5
static int intVal = 42; static String strVal = “Hello, world!”;
编译器会生成一个叫做的初始化类的方法,当类第一次被使用的时候这个方法会被执
行。方法会将
42 赋给 intVal,然后把一个指向类中常量表的引用赋给 strVal。当以后要用到这
些值的时候,会在成员变量表中查找到他们。
6
static final int intVal = 42; static final String strVal = “Hello, world!”;
现在,类不再需要方法,因为在成员变量初始化的时候,会将常量直接保存到类文件
中。用到
intVal 的代码被直接替换成 42,而使用 strVal 的会指向一个字符串常量,而不是使
用成员变量。
7、谨慎使用 foreach
foreach 可以用在实现了 Iterable 接口的集合类型上。foreach 会给这些对象分配一个
iterator,然后调用 hasNext()和 next()方法。你最好使用 foreach 处理 ArrayList 对象,但是对
其他集合对象,
foreach 相当于使用 iterator