还是 Zero霖 的解释更详细具体透彻,佩服!
- public class Example {
- String str = new String("good");
- char[] ch = {'a','b','c'};
- public static void main(String[] args) {
- Example ex = new Example();
- ex.change(ex.str, ex.ch);
- System.out.println(ex.str+" and ");
- System.out.println(ex.ch);
- }
- public void change(String str , char ch[]) {
- //这个str被当成局部变量,而不是Example中的成员变量
- //相当于给str这个局部变量赋了"test ok"这个值,并没有改变ex这个对象的成员变量str的值
- str="test ok" ;
- //要使得ex中的str也变为"test ok"(即想要让答案为D)的话,应该加上如下一行代码
- this.str = str ;
- ch[0] = 'g' ;
- }
- }
复制代码
|