Java’da Final, Transient, Volatile ve Static Değişkenler (2026 Detaylı Rehber)

Bu yazıda Java değişken türleri olan final, transient, volatile ve static kavramlarını detaylı şekilde inceleyeceğiz.

Kısa özet: Bu anahtar kelimeler Java’da değişkenlerin davranışını belirler ve performans, thread yönetimi ve veri güvenliği açısından önemlidir.

Final Değişkenler (final variables)

final anahtar kelimesi ile tanımlanan değişkenler yalnızca bir kez değer alabilir. Daha sonra değiştirilmeleri mümkün değildir.

final int x = 10;

Referans tiplerde ise referans sabittir, ancak nesnenin içeriği değiştirilebilir.

Final sınıf ve metotlar

final class Haberler { }

class Arabalar {
    final void hiz() { }
}

Final sınıflar extend edilemez, final metotlar override edilemez.

Transient Değişkenler

transient değişkenler, nesne serialize edilirken göz ardı edilir.

class Veriler implements Serializable {
    transient int y = 7;
    static int z = 9;
}
Transient sadece değişkenler için kullanılır.

Volatile Değişkenler

volatile değişkenler, çoklu thread ortamında her zaman ana bellekten okunur.

  • Thread-safe davranış sağlar
  • Cache yerine ana bellek kullanılır
Volatile ve synchronized benzer amaçlara hizmet eder ancak aynı değildir.

Static Değişkenler ve Metotlar

static, değişkenin veya metodun sınıfa ait olduğunu belirtir.

  • Tüm nesneler aynı değeri paylaşır
  • Nesne oluşturmadan erişilebilir
  • Tek bir kopya vardır

Örnek

class Arac {
    static int sayac = 0;

    public Arac() {
        sayac++;
    }

    public static void main(String[] args) {
        new Arac();
        new Arac();
        new Arac();

        System.out.println("Araç sayaç: " + sayac);
    }
}
Araç sayaç: 3

Static Kuralları

  • Static metotlar
  • Static değişkenler
  • Static bloklar kullanılabilir

Static olmayanlar

  • Constructor
  • Local değişkenler
  • Instance değişkenler

Sık Yapılan Hatalar

  • Final değişkeni tekrar atamak
  • Static kullanımını yanlış anlamak
  • Volatile kullanımını yanlış yorumlamak
  • Transient’in serialization etkisini bilmemek

Sonuç

Java final, transient, volatile ve static kavramları, performanslı ve doğru Java uygulamaları geliştirmek için kritik öneme sahiptir.

Etiketler: java final, java static, java volatile, java transient

Son Güncelleme: 2026

Latest Software Developers - Yazılım Blog Yazarı Profil Resmi

Yazar

LatestSoftwareDevelopers

Blog where the most up-to-date software is followed. (En güncel yazılımların takip edildiği blog sitesi)

Java ile ilgili yorumlar

Yorum Paylaş

EMail Zorunlu alanlar * *