0Pricing
Android Academy · Pelajaran

Kelas Data

Kelas ringkas untuk menyimpan data.

Kelas Data adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 4 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 Kelas Data?

Kelas data adalah kelas yang dibuat untuk menyimpan data. Kotlin secara otomatis menghasilkan metode yang berguna untuknya.

Anda mendeklarasikannya dengan menulis data sebelum class.

Mendeklarasikan Kelas Data

Kelas data memerlukan setidaknya satu parameter dalam konstruktor utamanya, dan setiap parameter harus ditandai dengan val atau var.

Berikut adalah User yang menyimpan nama dan usia.

data class User(val name: String, val age: Int)

fun main() {
    val u = User("Ada", 30)
    println(u.name)
}

toString yang Mudah Dibaca

Kelas biasa mencetak alamat yang sulit dipahami. Kelas data menghasilkan toString yang jelas dan menampilkan setiap properti.

Hal ini membuat proses penelusuran kesalahan jauh lebih mudah.

data class User(val name: String, val age: Int)

fun main() {
    val u = User("Ada", 30)
    println(u)
}

Membandingkan dengan equals

Kelas data membandingkan berdasarkan isi, bukan identitas. Dua objek dengan nilai properti yang sama dianggap sama dengan ==.

Kelas biasa akan menganggap keduanya berbeda.

data class Point(val x: Int, val y: Int)

fun main() {
    val a = Point(1, 2)
    val b = Point(1, 2)
    println(a == b)
}

Fungsi copy

Fungsi copy yang dihasilkan membuat objek baru berdasarkan objek yang sudah ada. Anda dapat mengubah hanya properti yang Anda tentukan.

Objek asli tetap tidak berubah.

data class User(val name: String, val age: Int)

fun main() {
    val u = User("Ada", 30)
    val older = u.copy(age = 31)
    println(older)
}

Dekonstruksi

Kelas data mendukung dekonstruksi: membongkar properti menjadi variabel terpisah dalam satu baris.

Urutannya mengikuti konstruktor.

data class User(val name: String, val age: Int)

fun main() {
    val (name, age) = User("Sam", 25)
    println(name + " " + age)
}

Nilai Default Juga Berlaku

Seperti konstruktor lainnya, parameter kelas data dapat memiliki nilai default.

Dengan begitu, pemanggil dapat menghilangkan bidang yang tidak diperlukan.

data class User(val name: String, val active: Boolean = true)

fun main() {
    val u = User("Lee")
    println(u)
}

hashCode untuk Koleksi

Kelas data juga menghasilkan hashCode, sehingga dapat digunakan dengan benar sebagai kunci dalam Set atau Map.

Objek yang sama menghasilkan hash yang sama, sehingga duplikat dapat terdeteksi.

data class Point(val x: Int, val y: Int)

fun main() {
    val set = setOf(Point(1, 1), Point(1, 1))
    println(set.size)
}

Kapan Menggunakan Kelas Data

Gunakan kelas data ketika objek terutama membawa nilai, bukan perilaku yang kompleks.

  • Respons API
  • Keadaan UI di Android
  • Catatan basis data

Untuk objek yang kaya akan logika, kelas biasa lebih sesuai.

Kelas Data Menghemat Pekerjaan

Satu kata kunci data memberi Anda toString, equals, hashCode, copy, dan dukungan dekonstruksi.

Itu berarti banyak kode pendukung yang tidak perlu Anda tulis atau pelihara secara manual.

Kelas Data vs Kelas Biasa

Kelas biasa membandingkan berdasarkan identitas dan mencetak referensi memori. Kelas data membandingkan berdasarkan isi dan mencetak nilainya.

Kata kunci data mengaktifkan semua perilaku yang dihasilkan tersebut.

class Plain(val x: Int)
data class Smart(val x: Int)

fun main() {
    println(Plain(1) == Plain(1))
    println(Smart(1) == Smart(1))
}

Pemeriksaan Singkat

Uji pemahaman Anda tentang kelas data.

Ringkasan

Anda telah mempelajari bahwa kelas data secara otomatis menghasilkan toString, equals, hashCode, copy, dan dukungan dekonstruksi.

Kelas data ideal untuk objek pembawa nilai seperti keadaan UI dan model API. Kini Anda telah mempelajari fungsi, kelas, konstruktor, dan kelas data di Kotlin.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Kelas Data” gratis?

Ya — teks lengkap “Kelas Data” 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 Data”?

Kelas ringkas untuk menyimpan data. 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 4 dari 4.

Berapa lama pelajaran “Kelas Data” 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. Mendeklarasikan Fungsi
  2. Kelas dan Properti
  3. Konstruktor dan init
  4. Kelas Data
← Kembali ke Android Academy