Study
Kotlin

Interface di Kotlin

Penjelasan

Interface di Kotlin mendefinisikan kumpulan method yang wajib diimplementasikan class yang menerapkannya (lewat :), sama seperti bahasa lain. Bedanya, interface Kotlin BOLEH punya method dengan implementasi default langsung di dalamnya — class yang menerapkan interface itu tidak wajib meng-override method yang sudah punya default, cukup kalau memang ingin perilakunya berbeda.

Contoh Konsep

interface Bentuk {
    fun hitungLuas(): Double

    fun deskripsi(): String { // implementasi default
        return "Bentuk dengan luas ${hitungLuas()}"
    }
}

class Lingkaran(val jariJari: Double) : Bentuk {
    override fun hitungLuas(): Double {
        return 3.14 * jariJari * jariJari
    }
    // deskripsi() tidak wajib di-override, sudah ada default-nya
}

fun main() {
    val lingkaranku = Lingkaran(7.0)
    println(lingkaranku.deskripsi())
}

Praktikum

Buat interface Hewan dengan method bersuara(): String. Buat class Kucing yang : Hewan, method bersuara()-nya mengembalikan "Meong". Buat object Kucing di main() dan tampilkan hasil bersuara().

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Method dengan implementasi default di interface memudahkan menambah fungsi baru ke interface yang sudah dipakai banyak class, TANPA memaksa semua class yang sudah ada meng-implementasikannya ulang — berguna banget untuk menjaga kompatibilitas kode lama.