0Pricing
Android Academy · Pelajaran

Kelas & Objek

Definisikan kelas dengan properti dan metode, gunakan konstruktor, pahami pewarisan dan antarmuka, serta tulis kode berorientasi objek yang sesuai dengan gaya Kotlin.

Kelas & Objek adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Android Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Android Academy mencakup 4 pelajaran total.

Apa Itu Class?

Class adalah cetak biru untuk membuat objek. Class menggabungkan data terkait (properti) dan perilaku (fungsi) menjadi satu.

  • class Dog — mendefinisikan cetak biru
  • val myDog = Dog() — membuat sebuah instance (objek)

Contoh: class User yang menyimpan nama, usia, dan email.

Mendefinisikan Class

Class Kotlin memiliki sintaks konstruktor utama yang ringkas:

class User(val name: String, var age: Int) {
    fun greet(): String {
        return "Hi, I'm $name and I'm $age years old."
    }
}

fun main() {
    val user = User("Alice", 28)
    println(user.name)     // Alice
    println(user.age)      // 28
    user.age = 29          // var can be changed
    println(user.greet())
}

Data Class

Data class cocok untuk menyimpan data. Tambahkan kata kunci data, lalu Kotlin akan membuat secara otomatis:

  • equals() / hashCode() — membandingkan berdasarkan nilai
  • toString() — keluaran yang mudah dibaca manusia
  • copy() — membuat salinan yang telah dimodifikasi

Contoh Data Class

Data class sangat berguna saat merepresentasikan objek model:

data class Product(val id: Int, val name: String, val price: Double)

fun main() {
    val p1 = Product(1, "Laptop", 999.99)
    val p2 = p1.copy(price = 899.99) // new copy with changed price

    println(p1)           // Product(id=1, name=Laptop, price=999.99)
    println(p2)           // Product(id=1, name=Laptop, price=899.99)
    println(p1 == p2)     // false (different price)
}

Objek Pendamping

Objek pendamping menyimpan anggota yang dimiliki oleh class itu sendiri, bukan oleh instance mana pun — mirip dengan static dalam Java.

Akses anggota tersebut melalui nama class: User.create()

Contoh Objek Pendamping

Gunakan objek pendamping untuk metode pabrik dan konstanta:

class Counter {
    var count = 0

    fun increment() { count++ }

    companion object {
        const val MAX = 100

        fun create(): Counter = Counter()
    }
}

fun main() {
    val c = Counter.create()
    c.increment()
    c.increment()
    println(c.count)        // 2
    println(Counter.MAX)    // 100
}

Pewarisan

Class Kotlin secara default bersifat final (tidak dapat diperluas). Tandai class sebagai open untuk mengizinkan pewarisan.

  • open class Animal — dapat diperluas
  • class Dog : Animal() — memperluas Animal
  • override fun sound() — menimpa fungsi induk

Contoh Pewarisan

Buat hierarki class sederhana:

open class Shape {
    open fun area(): Double = 0.0
}

class Circle(val radius: Double) : Shape() {
    override fun area(): Double = 3.14159 * radius * radius
}

class Rectangle(val w: Double, val h: Double) : Shape() {
    override fun area(): Double = w * h
}

fun main() {
    val shapes: List<Shape> = listOf(
        Circle(5.0),
        Rectangle(4.0, 3.0)
    )
    for (s in shapes) println("Area: ${s.area()}")
}

Deklarasi Object

Deklarasi object membuat sebuah singleton — class dengan tepat satu instance, yang dibuat secara malas saat pertama kali diakses.

Gunakan ini untuk utilitas, pengelola, atau apa pun yang seharusnya hanya memiliki satu instance.

Pemeriksaan Singkat

Fitur apa yang disediakan secara otomatis oleh data class Kotlin?

Ringkasan: Class & Objek

Anda telah mempelajari dasar-dasar OOP dalam Kotlin:

  • Class dengan konstruktor utama dan fungsi anggota
  • data class — equals, toString, dan copy yang dibuat otomatis
  • companion object — anggota tingkat class (statis)
  • Class open dan override untuk pewarisan
  • Deklarasi object untuk singleton

Anda siap membuat aplikasi Android sungguhan!

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Kelas & Objek” gratis?

Ya — teks lengkap “Kelas & Objek” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Android Academy, upgrade ke CoddyKit PRO. Kursus Android Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Kelas & Objek”?

Definisikan kelas dengan properti dan metode, gunakan konstruktor, pahami pewarisan dan antarmuka, serta tulis kode berorientasi objek yang sesuai dengan gaya Kotlin. Kamu berlatih Android Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Android Academy?

Tidak diperlukan pengalaman sebelumnya. Android Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Kelas & Objek” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Android Academy ini?

Ya. Setiap pelajaran Android Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Keamanan Nilai Null
  2. Kelas & Objek
  3. Kelas Data & Kelas Sealed
  4. Fungsi Ekstensi & Fungsi Orde Tinggi
← Kembali ke Android Academy