İleri Java

Bilgini Test Et

Tüm 10 soruyu cevapla, ardından skorunu görmek için gönder.

1. Bu kod ne yazdırır?

public class Ornek {
    static int hesapla() {
        try {
            return 10;
        } finally {
            return 20;
        }
    }
    public static void main(String[] args) {
        System.out.println(hesapla());
    }
}

2. Multi-catch (`|`) kullanımı için doğru gerekçe hangisidir?

3. Bu kodun çalışma davranışı nedir?

public class Ornek {
    static void adim1() throws java.io.FileNotFoundException {
        adim2();
    }
    static void adim2() throws java.io.FileNotFoundException {
        throw new java.io.FileNotFoundException("dosya yok");
    }
    public static void main(String[] args) throws java.io.FileNotFoundException {
        adim1();
        System.out.println("bitti");
    }
}

4. Custom exception hiyerarşisi kurmakla ilgili aşağıdakilerden hangileri doğrudur? (Uygun olan hepsini seçin)

5. Bu kod ne yazdırır?

List<String> harfler = new ArrayList<>(List.of("a", "b", "c", "d", "e"));
List<String> altListe = harfler.subList(1, 3);
altListe.clear();
System.out.println(harfler);

6. Bu kod ne yazdırır?

class Calisan {
    String tanimla() { return "Calisan"; }
}

class Yonetici extends Calisan {
    String tanimla() { return super.tanimla() + " + Yonetici"; }
}

public class Ornek {
    public static void main(String[] args) {
        System.out.println(new Yonetici().tanimla());
    }
}

7. Bu kod ne yazdırır?

interface Depo<T> {
    void kaydet(T eleman);
    T sonEklenen();
}

class BellekteUrunDeposu implements Depo<String> {
    private String son;
    public void kaydet(String eleman) { this.son = eleman; }
    public String sonEklenen() { return son; }
}

public class Ornek {
    public static void main(String[] args) {
        Depo<String> depo = new BellekteUrunDeposu();
        depo.kaydet("laptop");
        System.out.println(depo.sonEklenen().toUpperCase());
    }
}

8. Bu kod derlendiğinde ne olur?

class SayisalKutu<T extends Number> {
    private T deger;
    void koy(T deger) { this.deger = deger; }
}

public class Ornek {
    public static void main(String[] args) {
        SayisalKutu<Boolean> kutu = new SayisalKutu<>();
    }
}

9. Bir metot üzerinde aşağıdaki modifier kombinasyonlarından hangileri yasaktır ve neden? (Uygun olan hepsini seçin)

10. Bu kod ne yazdırır?

static <T> T varsayilanUret(Supplier<T> uretici) {
    return uretici.get();
}

public class Ornek {
    public static void main(String[] args) {
        ArrayList<Integer> liste = varsayilanUret(ArrayList::new);
        System.out.println(liste.size());
    }
}