我将代码做了如下补全:
- class StringBuilder
- {
- String a;
- StringBuilder(String a)
- {
- this.a=a;
- }
- public void append(String a)
- {
- System.out.println(a);
- }
- }
- class Test
- {
- public static void main(String[] args)
- {
- final StringBuilder sb = new StringBuilder ("a");
- sb.append("b");
- }
- }
复制代码 程序执行结构是b。
final在这里修饰sb,sb是一个引用对象,它的值是一个哈希地址值,此值被final修饰后不可改变。而StringBuilder里传的是一个变量,并不是sb的值,所以这里还是可以改变的。 |