class A
{
public String name="";
}
public class demo1 extends demo{
public String hehe="this is TTTTT";
{
System.out.println("demo1的属性");
}
public demo1()
{
System.out.println("demo1的构造方法");
}
private void hehe(A a)
{
a=new A();
a.name="demo1方法";
System.out.println("demo2.a==="+a.name);
}
public static void main(String []args)
{
demo1 mun=new demo1();
A a=new A();
a.name="gfthmain方法";
mun.hehe(a);
System.out.println("main.a=="+a.name);
}
}
private void hehe(A a) (A a)这里是什么意思 怎么得到的 谁帮解释下
答案:4 悬赏:40 手机版
解决时间 2021-03-17 11:44
- 提问者网友:做自己de王妃
- 2021-03-16 12:35
最佳答案
- 五星知识达人网友:人间朝暮
- 2021-03-16 13:45
private void hehe(A a) 这个是个java method
你在main中 定义了一个A的对象a
然后调用了hehe(a)的方法
这个是个引用传递
调用hehe的时候 把main中a的地址丢给了hehe中的a 是两个不同的对象 不过是指向同一个地址
不过你在hehe中重新new A();这样的话 他们又指向不同的地址了
你在main中 定义了一个A的对象a
然后调用了hehe(a)的方法
这个是个引用传递
调用hehe的时候 把main中a的地址丢给了hehe中的a 是两个不同的对象 不过是指向同一个地址
不过你在hehe中重新new A();这样的话 他们又指向不同的地址了
全部回答
- 1楼网友:毛毛
- 2021-03-16 16:31
(A a)是A类的一个对象引用,然后将A的对象引用传送给方法hehe();执行这个方法时,会修改对象引用a指向的存储在栈中的String类型的name值。代码前面有点乱。
- 2楼网友:怀裏藏嬌
- 2021-03-16 15:32
参数嘛,上面定义的class 类,说明这个方法需要传入A类型的参数
- 3楼网友:走死在岁月里
- 2021-03-16 14:46
你好!
这地方考察的是对象的引用传递,private void hehe(A a)表示需要传递一个A对象尽量,然后对A对象进行操作,操作的还是你原来定义的对象,考察的是对象的引用传递用法
如果对你有帮助,望采纳。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯