如何让输出值为8.只能在、、、、位置添加,只修改hello函数

import java.io.*;
class A{
public int x=10;
}
class test
{
public void hell0(A arg)
{
arg.x=9;
arg=new A();
arg.x=8;
、、、、、、、、、、、、、、、
}
public static void main (String[] args) throws java.lang.Exception
{
A a=new A();
test s=new test();
s.hell0(a);
System.out.println(a.x);
}
}

Qyouu
浏览 513回答 8
8回答

元芳怎么了

public void hell0(A arg){arg.x=9;arg=new A();arg.x=8; System.out.println("88888"); System.exit(0);}

宝慕林4294392

重写println

三国纷争

没有那么复杂,只是填几行代码。。。。。。我一开始是上边填一个引用,下边又填了几行,但是他说最好就是在、、、、、、、、、hello那三行后边改一些,或者添加一些什么。。。?

米脂

@邗影: 根据提供的这个hell0(A arg)模板,在、、、、、、、、、之后是不可能修改原始对象 a ,对arg变量进行的任何操作都不会影响 a 对象,所以只能在输出上做文章。Java里面只有值传递。

沧海一幻觉

直接删掉arg=new A();  你传递进来的对象是有对外是有效的, 当你新new一个对象后已经不是之前传递进来的对象了, 所以后续怎么改也不会生效的  其实好多人都说java只有值传递,  个人感觉这个情况就不是值传递了

弑天下

两种方式,第一种同上,不要在那方法里面去new(ps:你new的用意是什么?) 第二种,加个对象,让A成为其成员(字段),hello方法接受这个对象,然后你想怎么掰那个class为A的字段就怎么掰吧。

繁星淼淼

hello里的前三行是人家给的,只让你在前三行后改动。。。。。所以我才这样问

明月笑刀无情

void hello(A arg){ A arg2=arg; 那三行....... ......... .............. arg2.x=8;} 我一开始是这样改的,但是他希望还有别的方式,????我就不知道了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java