Java程序未关闭

Java程序未关闭,java,swing,jframe,Java,Swing,Jframe,当我尝试使用: JFrame jk = new JFrame(); jk.setAlwaysOnTop(true); String s = JOptionPane.showInputDialog(jk, "PassWord:", "Introduzir PassWord",JOptionPane.INFORMATION_MESSAGE); 我的java程序就是不关闭。但如果我只使用这个: String s = JOptionPane.showInputD

当我尝试使用:

JFrame jk = new JFrame();
jk.setAlwaysOnTop(true);
String s = JOptionPane.showInputDialog(jk, "PassWord:", "Introduzir PassWord",JOptionPane.INFORMATION_MESSAGE);
我的java程序就是不关闭。但如果我只使用这个:

String s = JOptionPane.showInputDialog(null, "PassWord:", "Introduzir PassWord",JOptionPane.INFORMATION_MESSAGE);

没问题。你知道为什么吗?如果需要,可以发布我的所有代码

在创建GUI的代码中添加以下行

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

当您关闭应用程序时,它将告诉Swing如何正确操作。

我们不需要您的所有代码,请考虑。请参阅。可能还值得一读未被接受的答案:它提供了更详细的解释,并给出了可选的解决方案。虽然有一些小评论,但我相信如果显示多个JFrame,通常会首选DISPOSE\u ON\u CLOSE。应用程序仍然不会关闭,因为用户无法关闭未显示的JFrame。