Programming

Fungsi Konstruktor Pada Bahasa Program Kotlin

Copywriting
Avatar photo
Written by Techfor Id

Apa itu Konstruktor di Program Kotlin ?

Di Program Kotlin, Konstruktor (Constructor) merupakan blok kode yang mirip seperti metode (Method). Dideklarasikan sesuai dengan nama Class diikuti dengan tanda ‘()’, konstruktor digunakan untuk meng-inisiasi variable pada waktu pembuatan objek.

Terdapat 2 jenis konstruktor di Kotlin, yaitu :

  • Konstruktor Primer (Primary Constructor)
  • Konstruktor Sekunder (Secondary Constructor)

Di dalam kotlin hanya boleh ada 1 konstruktor primer saja, sedangkan untuk yang sekunder bisa lebih dari 1.

Konstruktor Primer (Primary Constructor) di Program Kotlin

Konstruktor primer atau utama digunakan untuk meng-inisialisasi Class. Ia deklarasikan di bagian header Class tersebut. Kode konstruktor utama diapit oleh tanda kurung dengan parameter opsional.

Pada kode di bawah ini, kita akan mendeklarasikan sebuah konstruktor myClass dengan dua nama parameter dan ID. Nama parameter hanya properti baca sedangkan id adalah properti baca dan tulis.

class myClass(valname: String,varid: Int) {  

    // class body  

}  

Ketika objek myClasss dibuat, itu menginisialisasi nama dan ID dengan “Ashu” dan “101” masing-masing.

class myClass(val name: String, var id: Int) {  

}  

fun main(args: Array<String>){  

val myclass = myClass (“Ashu”, 101)  

println(“Name = ${ myclass.name}”)  

println(“Id = ${ myclass.id}”)  

}  

Output :

Name = Ashu

Id = 101

Konstruktor  Primer dengan Penginisialisasi Block

Konstruktor utama tidak berisi kode apa pun. Blok penginisialisasi digunakan untuk inisialisasi kode. Blok ini diawali dengan kata kunci ini.

Pada periode inisialisasi instance, blok yang di inisialisasi dijalankan dalam urutan yang sama seperti yang muncul di bagian Body suatu Class.

Mari tulis ulang kode di atas menggunakan inisialisasi blok:

class myClass(name: String, id: Int) {  

val e_name: String  

var e_id: Int  

init{  

e_name = name.capitalize()  

e_id = id  

println(“Name = ${e_name}”)  

println(“Id = ${e_id}”)  

    }  

}  

fun main(args: Array<String>){  

val myclass = myClass (“Ashu”, 101)  

}  

Output :

Name = Ashu
Id = 101

Pada kode di atas, nama parameter dan ID menerima nilai “Ashu” dan “101” saat objek myclass dibuat. Nama properti dan ID digunakan tanpa “val” atau “var”, jadi mereka bukan properti kelas myClass.

Ketika objek kelas myClass dibuat, ia mengeksekusi blok penginisialisasi yang inisialisasi_name dan e_id.

Konstruktor Sekunder (Secondary Constructor) di Program Kotlin

Di Kotlin, konstruktor sekunder dapat dibuat satu atau lebih di kelas. Konstruktor sekunder dibuat menggunakan kata kunci “konstruktor”.

Mari kita lihat contoh deklarasi konstruktor sekunder. Pada kode di bawah ini, kita mendeklarasikan dua konstruktor myClass dengan dua nama parameter dan id.

class myClass{  

    constructor(id: Int){  

        //code   

    }  

    constructor(name: String, id: Int){  

        //code   

    }  

}  

Dan berikut ialah contoh konstruktor sekunder yang menetapkan nilai sementara objek kelas dibuat :

class myClass{  

    constructor(name: String, id: Int){  

println(“Name = ${name}”)  

println(“Id = ${id}”)  

    }  

}  

fun main(args: Array<String>){  

val myclass = myClass (“Ashu”, 101)  

}  

Output :

Name = Ashu
Id = 101

Kita juga dapat menggunakan konstruktor primer dan sekunder dalam kelas yang sama. Dengan menggunakan konstruktor primer dan sekunder di kelas yang sama, konstruktor sekunder perlu meng-otorisasi konstruktor primer. Otorisasi ke konstruktor lain di kelas yang sama dilakukan menggunakan kata kunci this().

class myClass(password: String){  

    constructor(name: String, id: Int, password: String): this(password){  

println(“Name = ${name}”)  

println(“Id = ${id}”)  

println(“Password = ${password}”)  

    }  

}  

fun main(args: Array<String>){  

val myclass = myClass (“Ashu”, 101, “mypassword”)  

}  

Output :

Name = Ashu
Id = 101
Password = mypassword

Sumber : https://www.javatpoint.com/kotlin-constructor

About the author

Avatar photo

Techfor Id

Leave a Comment

Click to ask
Hai, Tanya-Tanya Aja
Hi ini Windy, dari techfor

Windy bisa membantu kamu memahami layanan Techfor
Seperti

1. Kursus Online By Expert
2. Partnership Event dan Konten
3. Layanan liputan multimedia
4. Dan hal lain yg ingin kamu tau

Kirim saja pesan ini serta berikan salah satu nomor diatas atau beritahukan windy lebih jelas agar dapat membantu Kamu