以下是三个班级。
在这种情况下,Middle.java有一个静态全局变量x。
我使用setter方法从input.java类设置x的值。 现在我想使用getter方法从output.java访问相同的x值。但是当我尝试这样做时,它并没有这样做。 这是类文件。
Input.java
public class Input {
public static void main(String[] args)
{
Middle m = new Middle();
m.setX(100);
}
}
2.Middle.java
public class Middle {
public static int x;
public void setX(int value)
{
x = value;
}
public int getX()
{
return x;
}
}
3。 Ouput.java
public class Output {
public static void main(String[] args) {
Middle m = new Middle();
int temp = m.getX();
System.out.print(temp);
}
}
所以,当我首先运行input.java程序并将值设置为100然后运行output.java程序时,我必须得到的输出是100.但我不能得到它。
答案 0 :(得分:0)
如您所知,程序停止运行后,对象中保存的值将无法访问。因此,您需要将值永久存储在某处,以便下次运行程序时可以读取它。
执行此操作的一种方法是将值写入硬盘驱动器上的文件:
try (FileWriter writer = new FileWriter("/some/path/to/a/file.txt")) {
writer.write(yourValue);
} catch (IOException e) {
e.printStackTrace();
}
然后你可以这样读:
try (FileReader reader = new FileReader("/Users/mulangsu/Desktop/temp.txt")) {
System.out.println(reader.read());
} catch (FileNotFoundException e) {
System.out.println("File not found");
} catch (IOException e) {
e.printStackTrace();
}
另一种方法是将值保存到Web服务器。这样,您的价值可以在不同设备上持续存在。