【发布时间】:2020-11-03 19:55:40
【问题描述】:
class A
{
Int a =0;
public void SetA(){ //setting a value to 20
a = 20;
}
}
class B
{
public void show(){
SetA obj =new SetA();
System.Out.Println(obj.a)
}
}
首先从主方法中,我在 A 类中调用 SetA 方法,然后在 B 类中调用 show 方法,但即使我为 int a 设置值,它仍然返回零。有人请解释我为什么会发生这种情况以及我该如何解决这个问题。如何使用 SetA 方法中设置的值从任何其他类访问变量 a?
【问题讨论】:
-
public void SetA()不是构造函数,它是您永远不会调用的方法。删除void -
您的代码有编译错误。您必须使用构造函数来创建 A 的对象。
-
另外,没有类型“Int”。您应该使用“int”或“Integer”。
标签: java variables scope return-value