请问一下addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent event)
{
Window window = event.getWindow();
window.dispose();
System.exit(0);
}
});和public void windowClosing(WindowEvent event)
{
System.exit(0);
}
有什么区别呢?下面那一句也是关闭窗口啊!不是和上面那一段代码实现一样的效果吗?那么还要
Window window = event.getWindow();
window.dispose();
这两句有什么意义呢?这上面两句是有什么做用的啊
{
public void windowClosing(WindowEvent event)
{
Window window = event.getWindow();
window.dispose();
System.exit(0);
}
});和public void windowClosing(WindowEvent event)
{
System.exit(0);
}
有什么区别呢?下面那一句也是关闭窗口啊!不是和上面那一段代码实现一样的效果吗?那么还要
Window window = event.getWindow();
window.dispose();
这两句有什么意义呢?这上面两句是有什么做用的啊
结束整个程序的运行
但关闭某个窗口并不意味着程序结束呀
个人认为第一段代码的window.dispose()完全是多余
这个dispose()方法的调用反而会减缓窗口关闭速度,虽然你根本察觉不出来
至于dispose()方法的解释:
class java.awt.window
public void dispose()
释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。即这些 Component 的资源将被破坏,它们使用的所有内存都将返回到操作系统,并将它们标记为不可显示。
通过随后调用 pack 或 show 重新构造本机资源,可以再次显示 Window 及其子组件。重新创建的 Window 及其子组件的状态与释放 Window 时这些对象的状态一致(不考虑这些操作之间的其他更改)。 注:当 Java 虚拟机 (VM) 中最后的可显示窗口被释放后,虚拟机可能会终止。
dispose是通过释放资源的方式
exit是直接关闭虚拟机
只是对外的表现貌似无差别而已
System.exit(0); 再整个退出系统
如果你是想退出整个系统 直接写第二句就成