这些setDefaultCloseOperation语句之间的区别

时间:2014-02-03 09:54:29

标签: java swing jframe

我无法理解这两个陈述之间的区别:

frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

其中frame是JFrame类的Object。 这些语句执行相同的任务。有什么区别?

2 个答案:

答案 0 :(得分:2)

执行方式没有区别。就在第一种情况下你 通过JFrame实例(frame)访问static field。在第二个中 您可以通过类名本身(JFrame)来访问它。

答案 1 :(得分:0)

使用哪个并不重要,但我使用的IDE Eclipse会发出警告......提示我应该静态访问它。

JFrame.EXIT_ON_CLOSE是一个静态变量,这意味着您不需要对象来访问此变量。

例如,如果您有多个JFrame对象并且每个对象都需要关闭,而不是写出每个对象的名称来访问此变量,您只需使用类名JFrame .然后是静态变量EXIT_ON_CLOSE

此外,使用java约定,所有静态变量都是大写。