标签:
String str = ‘abc‘;
str = str + ‘def‘;
首先,‘abc’和‘def’是两个单独的对象,编译的时候会拜放到常量池中。然后执行String str = ‘abc’将str‘abc’指向这个常量,然后str = str + ‘def’会重新创建一个‘abcdef’的对象,并将str指向这个对象。所以以上的代码中,我们共创建了3个对象。
StringBuffer stringBuffer1 = new StringBuffer("abc"); StringBuffer stringBuffer2 = new StringBuffer("abc"); System.out.println(stringBuffer1.equals(stringBuffer2));
上面的代码返回的是false。StringBuffer操作字符串可以用append和delete方法。
第一种:str和常量池中的“abc”是同一个对象。
第二种:str和常量池中的“abc”是不同的对象。
执行!先将运算结果return给调用函数,然后在执行finally中的语句,然后再执行调用函数的接下来代码。
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。
finally是异常处理语句结构的一部分,表示总是执行。
finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。JVM不保证此方法总被调用。
(1)HashMap允许空的键名和键值,但是HashTable不可以。
(2)HashTable是线程同步安全的,HashMap不是。
标签:
原文地址:http://www.cnblogs.com/LOVE0612/p/5306470.html