SORU
24 Mart 2010, ÇARŞAMBA


Neden Java Koleksiyonları doğrudan İlkel türleri deposu değil mi?

Java koleksiyonlar deposu Nesneler, ilkel türleri; ancak sarıcı sınıflar saklayabilirsiniz.

Neden bu kısıtlama?

CEVAP
24 Mart 2010, ÇARŞAMBA


Java tasarım bir karar, ve bazı bir hata olduğunu düşün. Kaplar istiyorum Nesneleri ve ilkel Nesne türetmek yok.

Bu tek bir yerde .NET tasarımcılar boks gibi JVM ve hayata değer türleri ve jenerik öğrendim birçok durumda ortadan kalkar. CLR, genel bir kapsayıcı alttaki kabın yapısının bir parçası olarak değer türleri saklayabilirsiniz.

Java genel destek eklemek için JVM desteği olmadan derleyici 100% tercih etti. JVM ne olmak, "non-nesne" nesne. bir destek yok Java jenerik sen sarıcı yok gibi davranmak için izin, ama yine de boks performans fiyat ödemek. Bu programlar belirli sınıflar için ÖNEMLİDİR.

Boks teknik bir uzlaşma ve uygulama detay diline sızıntı olduğunu hissediyorum. Autoboxing güzel sözdizimsel şekerdir, ama hala bir başarım. Eğer bir şey, autoboxes zaman derleyici beni uyarmak istiyorum. (Bildiğim kadarıyla, şimdi, 2010 yılında bu cevap yazdım).

Boks hakkında ÇOK iyi bir açıklama: Why do some languages need Boxing and Unboxing?

Ve Java jenerik eleştiri: Why do some claim that Java's implementation of generics is bad?

Java savunması kolay geriye bakmak ve eleştirmek için. JVM zaman test dayanmış olan ve pek çok bakımdan iyi bir tasarım.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 99being99

    99being99

    2 EYLÜL 2008
  • Epic Tutorials for iPhone, iPad and iOS

    Epic Tutoria

    18 EYLÜL 2011
  • RD

    RD

    19 NİSAN 2006