Özet - Static
- Java kursu
- Orta seviye
- Ders 35/116
- 5 dk
static alan, metot ve bloğu birleştirerek bir Configuration sınıfı yazarsın.
Özet - Static
Bu grupta static alanları, static metotları, static blokları, sınıf değişkenlerini ve instanceof operatörünü öğrendin. Static üyeler sınıfa aittir; örnek oluşturmadan kullanılır.
Şimdi tüm bunları bir araya getireceksin: bir sınıf tanımla, static alan ve metot ekle, static blokle başlat ve instanceof ile tür kontrolü yap. Static, sınıf düzeyinde paylaşılan veri ve davranış sağlar.
Uygulama Logger sınıfını static ile tanımla
Logger adında bir sınıf tanımla. İçine static int count = 0 alanını ekle. static void log(String msg) metodu yaz; gövdesinde count++ yap ve System.out.println(count + ": " + msg); yaz. main içinde Logger.log("Başladı") ve Logger.log("Bitti") çağır.
Başlangıç kodu
// Logger sınıfını tanımla
// static count ve log metodu ekle
// main içinde log çağırÖrnek çözüm
class Logger {
static int count = 0;
static void log(String msg) {
count++;
System.out.println(count + ": " + msg);
}
public static void main(String[] args) {
Logger.log("Başladı");
Logger.log("Bitti");
}
}Beklenen çıktı
1: Başladı 2: Bitti
Sırada ne var?
Static üyeleri öğrendin. Sonraki gruplarda sabitler ile değişmez değerleri, enum ile sabit kümelerini ve interface ile sözleşme tanımlamayı göreceksin. Bunlar, sınıf tasarımının bir sonraki katmanıdır.
Bu grup; static alan, metot, blok, sınıf değişkenleri ve instanceof kavramlarını birleştirdi. Bunlar sınıf düzeyinde çalışmanın temelidir. Bir sonraki adımda sabitlerle değişmez değerleri tanımlayacaksın; static final ve enum ile değişmez veriyi keşfedeceksin.
Uygulama Counter sınıfını static ile tanımla
Counter adında bir sınıf tanımla. İçine static int total = 0 alanını ekle. static void increment() metodu yaz; gövdesinde total++ yap. static int getTotal() metodu yaz; total döndürsün. main içinde Counter.increment() çağır üç kez ve Counter.getTotal() sonucunu yazdır.
Başlangıç kodu
// Counter sınıfını tanımla
// static total, increment ve getTotal ekle
// main içinde increment çağır ve getTotal yazdırÖrnek çözüm
class Counter {
static int total = 0;
static void increment() {
total++;
}
static int getTotal() {
return total;
}
public static void main(String[] args) {
Counter.increment();
Counter.increment();
Counter.increment();
System.out.println(Counter.getTotal());
}
}Beklenen çıktı
3
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 static metot nasıl çağrılır?
- Yapıcı içinde
- Sınıf adıyla Doğru cevap
- Örnek üzerinden
- interface ile
Açıklama: Sınıf adıyla — static metot örnek gerektirmez.
2 instanceof kontrolünü tamamla
if (obj ____ String) {
String s = (String) obj;
}
if (obj instanceof String) {
String s = (String) obj;
}
Açıklama: instanceof ile tür güvenle kontrol edilir.