JAVA类和类之间的赋值问题

建立下三个类(文件那种)
public class Dto {

public String hehe;

public String getHehe() {
    return hehe;
}

public void setHehe(String hehe) {
    this.hehe = hehe;
}

}
2.R.java
public class R {

public void hehe() {

    String test = "test";
    Dto dto = new Dto();
    dto.setHehe(test);
}

}
3.Main.java
public class Main {

public static void main(String[] args) {
    R r = new R();
    r.hehe();
    Dto dto = new Dto();
    System.out.print(dto.getHehe());

}

}

最后想要的结果是test 但却是null,求解为什么和解决方案

0

6个回答

 public class R {
public void hehe(dto) {

    String test = "test";
    dto.setHehe(test);
}
}

public class Main {
public static void main(String[] args) {
    R r = new R();
        Dto dto = new Dto();
    r.hehe(dto);

    System.out.print(dto.getHehe());

}
}
0
 public class R {
public void hehe(Dto dto) {

    String test = "test";
    dto.setHehe(test);
}
}
0

还有一种写法,把hehe定义成static

0

R r = new R();

r.hehe();   这个hehe你应该往里传值,;一般是这样,但是你把值写到hehe里了,

Dto dto = new Dto();    此dog 非hehe中的dog,等于又重新生出来一个

System.out.print(dto.getHehe());   最后,你想输出hehe里的dog 但其实生出来的是上面你new的,可不是空呗
0

Public void hehe()是无参不返回值的方法,变量r指向的引用对象调用的hehe()方法无返回值,那么公共成员变量hehe jiu 没有被初始化,值就是为空,所以结果是null,我是这样理解的,多多指教

0

Dto 虽然名字是一样的,但是他是两个对象,在R中的Dto 对象中给hehe 赋值, 然后再mian() 中的 Dto这个对象中是获取不到的。 要么把对象传递过去,要么把hehe 设置成静态的。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!