我最近开始用Java编程,并遇到了一个问题,即我不太确定如何搜索答案。所以这是短版本: 我有一个名为test(为了问题)的类,公共变量和公共方法都有自己的变量。在我的主类中,我可以创建一个对象来调用测试类变量,但是我可以调用那个类中方法中使用的变量吗?
答案 0 :(得分:0)
不,您必须将该变量存储为该类的成员变量。例如:
public class Test {
public int b;
Test() {
int a = 1;
b = 2;
}
}
所以在你的其他课程中,你可以得到b
这样的价值:
Test test = new Test();
int valueOfBInTest = test.b;
但是无法检索a
构造函数中使用的Test
变量,因为该变量在Test
构造函数的末尾被遗忘了。这是因为有一种叫做范围的东西。 b
变量具有类实例的范围,因此只要Test
类的实例存在,就可以检索b
。但由于a
变量是在Test
构造函数中声明的,因此它仅在Test
的构造函数中可用。要清楚,Test
的任何方法都会发生同样的事情。如果在方法中声明了一个变量,那么当该方法完成时该变量将会丢失。