为什么在方法中看不到“私有静态”?

时间:2010-04-17 09:11:20

标签: java static field private visibility

我有一个类,其中包含以下字段声明:

public class Game {
private static String outputFileName;
....
}

我在班级的outputFileName方法中设置main的值。

我在类中也有一个使用write的{​​{1}}方法。在outputFileName设置write的值后,我始终致电main。但是outputFileName仍然没有看到write的价值。它说它等于outputFileName

任何人,请求,告诉我我做错了什么?

ADDED 根据要求,我发布了更多代码:

主要:

null

此行输出文件名。

String outputFileName = userName + "_" + year + "_" + month + "_" + day + "_" + hour + "_" + minute + "_" + second + "_" + millis + ".txt"; f=new File(outputFileName); if(!f.exists()){ try { f.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } System.out.println("IN THE MAIN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); System.out.println("------>" + outputFileName + "<------"); 我有:

write

它输出null。

2 个答案:

答案 0 :(得分:3)

好像你有一个局部变量或一个同名的参数

答案 1 :(得分:3)

main代码

的第一行
String outputFileName = ...

需要

outputFileName = ...

否则你正在创建一个名为outputFileName的新的本地var,并且private static没有被触及。