static final
- Java kursu
- Orta seviye
- Ders 36/116
- 4 dk
static final ile sabit tanımlamayı öğrenirsin.
static final
Bir sabit (constant), program boyunca değişmeyen değerdir. Java'da sabitler static final anahtar kelimeleriyle tanımlanır. static sınıf düzeyinde tek kopya sağlar; final değerin değiştirilememesini güvence altına alır.
Örnek: class Settings { static final int MAX_USERS = 100; }. Burada MAX_USERS bir sabittir. Sınıf yüklendiğinde 100 değerini alır ve sonradan değiştirilemez. Settings.MAX_USERS = 200; yazarsan derleme hatası alırsın. Sabitler, programda birden çok yerde kullanılan büyüklükleri tek noktadan yönetmeyi sağlar. Değer değiştiğinde yalnızca tanım güncellenir; tüm kullanım yerleri otomatik etkilenir.
Neden sabit kullanılır?
Sabitler, programda tekrar tekrar kullanılan büyüklükleri tek isimle yönetir. Değer değiştiğinde yalnızca sabit tanımı güncellenir; tüm kullanım yerleri otomatik güncellenir. Bu, bakımı kolaylaştırır ve hataları azaltır.
Örnek: Bir oyunda static final int MAX_LIVES = 3; sabiti olsun. Bu sabit on farklı yerde kullanılıyorsa, maksimum canı 5'e çıkarmak için tek tanımı değiştirmek yeterlidir. Sabit kullanmasaydın on yerde 3 yazmış olurdun ve değişiklik için hepsini tek tek bulup güncelmen gerekirdi. Sabitler ayrıca kodun okunabilirliğini artırır; 3 yerine MAX_LIVES daha anlamlıdır.
Uygulama Settings sınıfına sabit ekle
Settings adında bir sınıf tanımla. İçine static final int MAX_USERS = 100 sabitini ekle. static final String APP_NAME = "Kütüphane" sabitini ekle. main içinde her iki sabitin değerini ayrı satırlarda yazdır.
Başlangıç kodu
// Settings sınıfını tanımla
// iki sabit ekle
// main içinde yazdırÖrnek çözüm
class Settings {
static final int MAX_USERS = 100;
static final String APP_NAME = "Kütüphane";
public static void main(String[] args) {
System.out.println(Settings.MAX_USERS);
System.out.println(Settings.APP_NAME);
}
}Beklenen çıktı
100 Kütüphane
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 static final int MAX = 10; tanımında final ne sağlar?
- Değer her yerden erişilir
- Değer değiştirilemez Doğru cevap
- Değer statik olur
- Değer silinir
Açıklama: final, değerin değiştirilememesini sağlar.
2 Sabit tanımını tamamla
class Settings {
____ int MAX_USERS = 100;
}
class Settings {
static final int MAX_USERS = 100;
}
Açıklama: static final sabit tanımlar.
3 Sabit bölümlerini eşle
| Kavram | Anlamı |
|---|---|
static |
Sınıf düzeyi |
final |
Değişmezlik |
MAX_USERS |
Sabit ismi |
100 |
Değer |