Inheritance di Java (extends & super)
Penjelasan
Inheritance (pewarisan) memungkinkan sebuah class (subclass/child class) mewarisi field dan method dari class lain (superclass/parent class) memakai keyword extends — supaya kode yang sama tidak perlu ditulis ulang di tiap class turunan. Keyword super dipakai di dalam subclass untuk memanggil constructor atau method milik superclass-nya.
Contoh Konsep
public class Hewan {
String nama;
Hewan(String nama) {
this.nama = nama;
}
String bersuara() {
return nama + " mengeluarkan suara.";
}
}
public class Kucing extends Hewan {
Kucing(String nama) {
super(nama); // panggil constructor Hewan
}
@Override
String bersuara() {
return nama + " berkata Meong!";
}
}
// Kucing kucingku = new Kucing("Milo");
// System.out.println(kucingku.bersuara()); // Milo berkata Meong!
Praktikum
Buat class Kendaraan dengan field String merek (diisi lewat constructor) dan method infoMerek() yang mengembalikan "Merek: {merek}". Buat class Motor yang extends Kendaraan, constructor-nya memanggil super(merek). Buat object Motor di main() dan tampilkan hasil infoMerek().
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Java hanya mendukung single inheritance (satu class hanya bisa extends satu superclass, tidak bisa dua sekaligus) — kalau butuh "mewarisi" perilaku dari beberapa sumber, pakai kombinasi beberapa interface.