黑马程序员技术交流社区
标题:
来猜程序结果,都对了就真的明白java是值传递还是引用传递
[打印本页]
作者:
Foundmoon
时间:
2015-6-13 15:13
标题:
来猜程序结果,都对了就真的明白java是值传递还是引用传递
本帖最后由 Foundmoon 于 2015-6-13 15:40 编辑
赶快猜,一会公布答案和解释
class Person
{
int age;
Person(int age)
{
this.age=age;
}
}----------------------------------------------------------------------------
public class Test1
{
public static void main(String[] args)
{
Person p1=new Person(21);
show(p1);
System.out.println(p1.age);
}
static void show(Person p)
{
Person p3=new Person(28);
p=p3;
}
}
-----------------------------------------------------------------------------------------
public class Test2
{
public static void main(String[] args)
{
Person p1=new Person(21);
show(p1);
System.out.println(p1.age);
}
static void show(Person p)
{
p.age=28;
}
}-------------------------------------------------------------------------------------
public class Test3
{
public static void main(String[] args)
{
Person p1=new Person(21);
show(p1);
System.out.println(p1.age);
}
static void show(Person p)
{
Person p3=new Person(28);
p=p3;
p.age=99;
}
}
作者:
Enhon1992
时间:
2015-6-13 17:44
Java没有引用传递这一说
作者:
Foundmoon
时间:
2015-6-13 17:44
kikt 发表于 2015-6-13 16:53
1、21
p指向了新的引用,但没有改变原来引用的数值,所有main函数的p还是原引用
2、28
厉害:):):):)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2