Last Updated on November 2, 2021 by
Pada artikel sebelumnya, Codekey telah membahas tentang data class kotlin. Artikel seri tutorial Kotlin kali ini, Codekey akan membahas tentang Kotlin Sealed Class.
Sealed Class sama seperti interface yang merepresentasikan hierarki kelas terbatas yang memberikan kontrol lebih besar atas inheritance. Semua subclass (sub kelas) dari kelas tertutup diketahui pada waktu kompilasi.
Tidak ada sub kelas lain yang dapat muncul setelah modul dengan kelas tertutup dikompilasi. Misalnya, klien pihak ketiga tidak dapat memperluas kelas tertutup Anda dalam kode mereka. Jadi, setiap instance dari kelas tertutup memiliki tipe dari himpunan terbatas yang diketahui saat kelas ini dikompilasi.
Pekerjaan yang sama untuk sealed interface dan implementasinya: setelah modul dengan antarmuka tersegel dikompilasi, tidak ada implementasi baru yang dapat muncul. Dalam beberapa hal, sealed class mirip dengan kelas enum : himpunan nilai untuk jenis enum juga dibatasi, tetapi setiap konstanta enum hanya ada sebagai satu instance, sedangkan subclass dari sealed class dapat memiliki banyak instance, masing-masing dengan instansnya. negara bagian sendiri.
Sealed Class Kotlin
Seperti yang sudah kami singgung sebelumnya, kita akan belajar tentang tipe kelas lain yang disebut kelas “Sealed”. Jenis kelas ini digunakan untuk mewakili hierarki kelas terbatas. Sealed memungkinkan pengembang untuk mempertahankan tipe data dari tipe yang telah ditentukan. Untuk membuat kelas tertutup, kita perlu menggunakan perintah “sealed” sebagai pengubah kelas tersebut.
Kelas tersegel dapat memiliki subkelasnya sendiri, tetapi semua subkelas tersebut harus dideklarasikan di dalam file Kotlin yang sama bersama dengan kelas tersegel. Dalam contoh berikut, kita akan melihat bagaimana menggunakan kelas tertutup.
sealed class MyExample { class Opsi1 : MyExample() // Kelas MyExmaple dapat terdiri dari dua jenis class Opsi2 : MyExample() } fun main(args: Array<String>) { val obj: MyExample = MyExample.Opsi2() val output = when (obj) { // mendefinisikan objek kelas tergantung pada input is MyExample.Opsi1 -> "Opsi Pertama telah dipilih" is MyExample.Opsi2 -> "Opsi Kedua telah dipilih" } println(output) }
Dalam contoh di atas, kita memiliki satu kelas tertutup bernama “MyExample”, yang hanya terdiri dari dua jenis – satu adalah “OP1” dan satu lagi adalah “OP2”. Di kelas utama, kami membuat objek di kelas kami dan menetapkan tipenya saat runtime. Sekarang, karena kelas “MyExample” ini ditutup, kita dapat menerapkan klausa “when” pada waktu proses untuk mengimplementasikan hasil akhir.
Di kelas tertutup, kita tidak perlu menggunakan pernyataan “lain” yang tidak perlu untuk memperumit kode. Potongan kode di atas akan menghasilkan keluaran berikut di browser.
Opsi Kedua telah dipilih
Demikianlah penjelasan tentang sealed class Kotlin. Materi sealed class ini kami hadirkan untuk melengkapi materi-materi tentang kelas di Kotlin, mengingat bahasa pemrograman ini adalah bahasa pemrograman berbasis kelas.
Jika Anda tertarik untuk belajar tentang Kotlin, simak terus seri tutorial Kotlin yang ada di Codekey. Situs Codekey menyediakan banyak artikel, pembahasan, materi, tips, dan trik tentang berbagai bahasa pemrograman, tidak hanya terbatas pada Kotlin. Jangan lupa untuk mendapatkan update selalu dari situs Codekey.
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.