Video: Difference between Core java and Advanced java 2024
İlkel tipler ve referans türleri arasındaki fark, Java'nın en tartışmalı özelliklerinden biridir ve geliştiriciler, ilkel değerler ve referans değerler arasındaki farklılıklardan şikayet eder.
-
İlkel her tür dile pişirilir.
Java'nın sekiz ilkel türü vardır.
-
Her başvuru türü bir sınıf veya arabirimdir.
Kendi referans türünüzü tanımlayabilirsiniz. Bu nedenle, Java'daki başvuru türlerinin sayısı potansiyel olarak sınırsızdır.
İşte temel-versus-reference-type "gotchas": "Bir ArrayList'e ilkel bir değer depolayamazsınız.
yazabilirsiniz // BU ŞU KUYUYORUZ: ArrayList arrayList = new ArrayList ();
çünkü String bir referans türüdür. Ancak
yazamazsınız / DO NOT DO THIS: ArrayList arrayList = new ArrayList ();
çünkü int bir ilkel türdür. Neyse ki, Java'nın ilkel türlerinin her biri, başka bir türün değerini içermek üzere bir referans türü olan bir sarıcı türü vardır. Örneğin, Java'nın Tamsayı türündeki bir nesne, tek bir int değeri içerir. Java'nın Çift türü nesnesi, tek bir çift değer içerir. Java'nın Karakter türünün bir nesnesi tek bir char değeri içerir. Bir int değeri arrayListi oluşturamazsınız, ancak bir ArrayList Integer değeri oluşturabilirsiniz.
// BU DAHA GÜNDÜR: ArrayList arrayList = new ArrayList ();
Her ilkel türün adı küçük harfle başlar. Her sarmalayıcı türü adı büyük harfle başlar.
İlkel değerleri içeren sarmalayıcı sınıfları, ilkel değerlerle çalışmak için yararlı yöntemler sağlar. Örneğin, Tamsayı sarmalayıcı sınıfı, parseInt ve int değerleriyle çalışmak için kullanışlı diğer yöntemler içerir:
String string = "17"; int number = Tamsayı. parseInt (dizi);
Zararlı olarak, sarıcı tiplerle çalışmak beceriksiz olabilir. Örneğin, aritmetik işleçleri Java'nın sayısal sarmalayıcı türleriyle birlikte kullanamazsınız. İki Tamsayı değeri oluşturmak ve bunları birlikte eklemek için:
Integer myInteger = new Integer (3); Tamsayı myOtherInteger = yeni Tamsayı (15); Tamsayı = sum = myInteger. intValue () + diğer kişiim. intValue ();