当前位置: 代码迷 >> Java面试 >> !j2se
  详细解决方案

!j2se

热度:6   发布时间:2016-04-17 19:20:38.0
求助!!!j2se
class Person{
int age = 20;
public void change(Person person){
person = new Person(); person.age = 30;
}
public void change2(int age){
age = 40;
}
}
public class ParamTest{
public static void main(String[] args){
[color=#0000FF]Person person = new Person();[/color] person.change(person);
int age = person.age;
System.out.println(age);
System.out.println("-----------------------------");
int i = 100;
person.change2(i);
System.out.println(i);
}
}
为什么这两个new出来的对象不一样!!!

------解决方案--------------------
开辟的内存空间不一样,所以不一样
------解决方案--------------------
一个在方法中,一个在实例化对象中