Skip to main content

🧩 Java Veri Tipleri: İlkel ve Referans Türleri Detaylı Rehber

Meta Açıklaması (155 karakter):
Java'nın statik tipli yapısındaki ilkel ve referans veri tiplerini JShell örnekleriyle öğrenin; kodunuzu optimize edin ve derleme öncesi hataları yakalayın.


🎯 Bu Rehberde Ne Öğreneceksiniz?

Bu rehberde, Java’nın temel yapı taşlarından olan veri tiplerini detaylıca öğreneceksiniz.
İlkel (primitive) tiplerden referans tiplere, literallere ve modern var anahtar kelimesine kadar tüm önemli konuları kapsayacağız.
Doğru veri tipi seçimiyle kodunuzun performansını nasıl artıracağınızı ve hataları derleme öncesinde nasıl yakalayabileceğinizi göreceksiniz.


⚙️ Java’nın Statik Tipli Yapısı

Java, statik tipli (statically typed) bir programlama dilidir.
Bu, bir değişken tanımlarken o değişkenin tutacağı bilginin türünü (veri tipini) belirtme zorunluluğu getirir.
PHP veya Python gibi dinamik tipli dillerin aksine, bu kural bize şu avantajları sağlar:

  • Kaynak Optimizasyonu: Her veri tipinin bellek kullanımı farklıdır. Tür belirtmek, sistem kaynaklarını daha verimli kullanmanı sağlar.
  • Erken Hata Tespiti: Yanlış tipte veri atandığında derleme hatası alınır; böylece test aşamasına geçmeden sorunu yakalarsın.

Java’da iki ana veri tipi kategorisi vardır:

  • İlkel Tipler (Primitive Types) – Sayılar, karakterler, mantıksal değerler.
  • Referans Tipleri (Reference Types) – Nesneleri (örneğin String, Integer) temsil eder.

💡 Önkoşullar

Bu rehberdeki örnekleri denemek için ihtiyacın olanlar:

  • Java 11 veya üzeri sürüm
  • JDK (Java Development Kit) kurulu sistem
  • Terminalden çalışan JShell aracı

JShell’i başlatmak için terminalde şu komutu yaz:

jshell

➡️ Açıklama: Bu komut, Java’nın etkileşimli kabuğunu başlatır.


🔢 İlkel (Primitive) Veri Tipleri

İlkel tipler basit değerleri tutar ve her zaman küçük harfle başlar. En sık kullanılanlar: int, boolean, char.

🧮 1. Tam Sayılar (int)

int, pozitif ve negatif tam sayıları saklar (yaklaşık −2.1 milyar ile +2.1 milyar arası).

int cevap = 42;
System.out.println("Bütün soruların cevabı: " + cevap);

➡️ Açıklama: cevap değişkeni tanımlanır ve değeri ekrana yazdırılır.

✅ 2. Mantıksal Değerler (boolean)

boolean, yalnızca true veya false değerlerini alabilir.

boolean javaEglenceliMi = true;
System.out.println("Java eğlenceli mi: " + javaEglenceliMi);

➡️ Açıklama: javaEglenceliMi değişkeni, true olarak ayarlanır ve ekrana yazdırılır.

🔤 3. Karakterler (char)

char, tek bir karakter tutar. Değer tek tırnak içinde yazılır.

char ilkHarf = 'A';
System.out.println(ilkHarf);

➡️ Açıklama: 'A' karakteri saklanır ve yazdırılır. char, String yapısının temel taşını oluşturur.


🧩 Referans (Reference) Veri Tipleri

Referans tipler, nesneleri (objeleri) işaret eder ve büyük harfle başlar. En yaygınları: String, Integer, Boolean, Character.

🧷 1. Metin Dizisi (String)

String, karakter dizilerini temsil eder.


String selam = new String("Merhaba");
System.out.println(selam);

➡️ Açıklama: selam değişkeni, yeni bir String nesnesine atanır. Kısa yazım için genelde şöyle kullanılır:


String selam = "Merhaba";

🧱 2. Sarmalayıcı (Wrapper) Sınıflar

İlkel tiplerin nesne versiyonlarını sağlar:

🧩 İlkel Tip🧱 Sarmalayıcı Sınıf
intInteger
booleanBoolean
charCharacter
Integer cevapNesnesi = Integer.valueOf(42);
System.out.println(cevapNesnesi);

➡️ Açıklama: Integer.valueOf() metodu, 42 değerini içeren bir nesne döndürür.


💎 Literaller (Sabit Değerler)

Literaller, doğrudan koda yazılan sabit değerlerdir.

📦 İlkel Tip Literalleri

int yas = 25;
char harf = 'A';
boolean aktif = true;

🧰 String Literali

String merhaba = "Merhaba, Dünya!";

🚫 null Literali

null, bir referansın hiçbir nesneye işaret etmediğini gösterir.

String baslangictaNull = null;
baslangictaNull = "Artık null değil";
System.out.println("Sınıf Adı: " + baslangictaNull.getClass());

➡️ Açıklama: null değerine erişim hataya yol açar; önce yeni bir değer atamalısın.


🧪 Yerel Değişken Tip Çıkarımı (var)

Java 10 ile gelen var, yerel değişkenlerin tipini otomatik belirler.

var mesaj = "Selam";
System.out.println(mesaj);

➡️ Açıklama: Java, mesaj değişkeninin String olduğunu otomatik tespit eder.

⚠️ var, yalnızca metot içindeki değişkenlerde geçerlidir. Sınıf dışında kullanmaya çalışırsan derleyici hata verir.


🚫 Saklı Anahtar Kelimeler (Reserved Keywords)

Java’da bazı kelimeler rezerve edilmiştir ve değişken adı olarak kullanılamaz:

abstract, continue, default, for, break, new, return, static, while ...

Hatalı örnek:

int new = 1; // HATA: 'new' anahtar kelime olarak saklanmıştır

🙋‍♂️ Sıkça Sorulan Sorular (SSS)

  1. Java’da neden int yerine Integer kullanayım?

int hızlı ve hafiftir, Integer ise nesne yetenekleri (metotlar, null atanabilirlik) sunar.

  1. String neden ilkel bir tip değil?

Çünkü String bir sınıftır; karakterlerden oluşan bir nesnedir.

  1. var kodu yavaşlatır mı?

Hayır, tip çıkarımı derleme aşamasında yapılır, çalışma zamanında fark yaratmaz.

  1. null ve 0 farkı nedir?

0, bir int değeri; null, bir nesnenin var olmamasıdır.


🏁 Sonuç

Bu rehberde Java’daki ilkel ve referans veri tiplerini, literalleri ve modern var özelliğini öğrendin. Java’nın statik tip sistemini anlamak, daha optimize ve hatasız kod yazmanın ilk adımıdır.

Kendi örneklerini JShell’de dene — ve bu bilgileri Rabisu Bulut platformunda hemen uygulayarak Java geliştirme yolculuğuna başla. 🚀