2011-12-21 17 views
8

İkisi arasında bir fark var mı? Ben Şu anda makale bile Java Swing Başvurusu için bir dinleyici WindowAdapter ve ve görüşmesi ekleme gerektiğini söylüyorSystem.exit (0) vs JFrame.EXIT_ON_CLOSE

JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

kullanmak her zaman

System.exit(0); 

kullanması gerektiğini hakkında bir makale (http://www.javalobby.org/java/forums/t17933) okuyordum windowClosing(WindowEvent e) metoduna göre System.exit().

Herhangi bir fark var mı? Biri diğerinden daha iyi midir? Eğer JFrame koduna baktığımızda

cevap

12

, öyle:

protected void processWindowEvent(WindowEvent e) { 
     super.processWindowEvent(e); 

     if (e.getID() == WindowEvent.WINDOW_CLOSING) { 
      switch(defaultCloseOperation) { 
       ... 
      case EXIT_ON_CLOSE: 
        // This needs to match the checkExit call in 
        // setDefaultCloseOperation 
     System.exit(0); 
     break; 
      } 
     } 
    } 

Yani tam olarak aynı şey. Yapmak istediğiniz şey buysa EXIT_ON_CLOSE ayarını yapardım.

0

Eh, System.exit (0) JFrame kodlamasında dikkate alındığında, ya işe yarayacaktı.