Interface & Abstract Class di C#
Penjelasan
Interface mendefinisikan kumpulan method yang WAJIB diimplementasikan oleh class yang menerapkannya, tanpa isi logika di interface itu sendiri — cocok untuk memastikan beberapa class punya "kontrak" perilaku yang sama. Abstract class mirip, tapi bisa punya method dengan isi logika sekaligus method abstrak yang wajib dilengkapi oleh class turunannya.
Contoh Konsep
interface IBentuk {
double HitungLuas();
}
class Lingkaran : IBentuk {
public double JariJari { get; set; }
public Lingkaran(double jariJari) {
JariJari = jariJari;
}
public double HitungLuas() {
return 3.14 * JariJari * JariJari;
}
}
// Lingkaran lingkaranku = new Lingkaran(7);
// Console.WriteLine(lingkaranku.HitungLuas());
Praktikum
Buat interface IHewan dengan method Bersuara(). Buat class Kucing yang : IHewan, method Bersuara()-nya mengembalikan "Meong". Buat object Kucing di Main() dan tampilkan hasil Bersuara().
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Menurut konvensi C#, nama interface selalu diawali huruf I (mis. IHewan, IBentuk) — memudahkan membedakan interface dari class biasa hanya dengan melihat namanya.