无法设置JFrame的可见(false)

时间:2013-05-20 04:22:04

标签: java swing compiler-errors inner-classes final

我正在创建一个医疗商店结算软件,其中我有三个JFrames其中一个我需要setVisible(false)点击JMenuItem。但是每次我编译错误都会显示

JFrame f is accessed from within inner class; needs to be declared final 

有人可以帮我吗?

2 个答案:

答案 0 :(得分:1)

如果将外部类Object引用到内部类,则在外部类对象的上下文中创建内部本地类对象当方法终止并且在执行方法期间值发生更改时会发生什么?这些局部变量应该保留,尽管它们是局部变量。

解决方案是你必须制作那些局部变量final。这表明编译器在variable本身终止时应将method复制到其他地方(如果需要)。

答案 1 :(得分:1)

如果需要访问外部类的变量。你需要像这样添加final:

final public JFrame frame

您可以在此处阅读以获取更多信息 维基百科上的final (Java)