SORU
15 EYLÜL 2010, ÇARŞAMBA


Sistem arayalım.Java çıkış

Java veya aşağıdaki kodu System.exit(0) olmadan fark Nedir?

public class TestExit
{      
    public static void main(String[] args)
    { 
        System.out.println("hello world");

        System.exit(0);  // is it necessary? And when it must be called? 
    }      
}

document diyor ki: "Bu yöntem hiçbir zaman normal olarak döner." Bu ne anlama geliyor?

CEVAP
15 EYLÜL 2010, ÇARŞAMBA


System.exit() program sonlandırılıyor önce shutdown hooks çalıştırmak için kullanılabilir. Bu programın tüm bölümleri (ve olmamalıdır) birbirinden haberdar olmasını istemediğim büyük programlar, kapatma işlemek için uygun bir yoldur. O zaman, eğer birileri ayrılmak istiyor, o sadece Ara System.exit() ve kapatma kanca (eğer düzgün kurmak) bakım yaparken gerekli tüm kapatma törenleri gibi dosyaları kapatma, serbest kaynaklar vb.

"Bu yöntem hiç normal gelirler" yöntemi dönmeyeceğim anlamına gelir; bir konu oraya giderse, geri gelmez..

Belki daha yaygın, bir programdan çıkmak için başka bir yol sadece main yöntemi sonuna ulaşmak için. Ama sonra başka bir araç kapatma kanca () non-daemon bütün konuları kapatmak ve diğer kaynaklar, sadece tek bir konu var sürece) serbest bırakmak için.

Nedense kapatma kanca gözardı ve yanlış anlaşılmış bir mekanizma gibi görünüyor, ve insanların özel özel kesmek her türlü tekerlek programlarına çıkmak için yeniden icat edilir. Kapatma kanca kullanarak öneririm; zaten kullanacağınız tüm standart Runtime.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Official Android Tips

    Official And

    23 EYLÜL 2009
  • SignatureSeries

    SignatureSer

    24 Aralık 2006
  • waterfairy17

    waterfairy17

    9 Aralık 2007