|
class Base
{
public int i;
public Base(int a)
{
i=a;
}
}
public class StringTest {
public static void changeStr(String str){
str="welcome";
}
public static void changeBase(Base b)
{
b.i=6;
}
public static void main(String[] args) {
String str="1234";
Base base= new Base(3);
changeBase(base);
System.out.println(base.i);
changeStr(str);
System.out.println(str);
}
}
我以为我明白了,可惜还是没明白
changeBase按“对象引用”的规则修改了i的值,
可是changeStr却没按“对象引用”规则,依然是“1234”
为什么呢? |
|