Pertama, Public
Merupakan modifier yang memungkinkan sebuah member class dapat di akses bebas. Baik dari dalam class ataupun dari luar class.
Kedua, Private
Merupakan modifier yang membuat sebuah member hanya dapat di akses dari dalam class dan objek yang dibuat dari class turunan, tidak diperkenankan untuk mengakses member class dari objek yang di instance langsung dari class induk ( error ).
Ketiga, Protected
Merupakan modifier yang dimana membernya hanya dapat diakses menggunakan method setter dan getter di kelas itu sendiri dan sub class / turunan dari class tersebut.
Skip untuk modifier public, langsung dengan dua saudaranya yang lain. Kita ubah class sebelumnya menjadi :
Lalu kita buat lanjutkan dengan membuat sebuah class turunan dari class Buku {}. Gunakan kata kunci extends untuk membuat class turunan :
Penulis diatas merupakan class turunan yang mewarisi seluruh member dan karakteristik dari class Buku {}. Selanjutnya kita tambahkan method setter dan getter di dalamnya :
Bisa juga kita tambahkan member lain, seperti contoh menambahkan property $namaPenulis
Kode class induk ( Buku {} ) dan class turunan ( Penulis {} ) menjadi :
Sekarang mari kita buat objek untuk masing-masing class tersebut
Mari kita akses langsung properti $penulis menggunakan objek $buku :
Lihat hasilnya di browser :
Hasilnya Error 👀Bagaimana hasilnya, cek di browser!
Merupakan modifier yang membuat sebuah member hanya dapat di akses dari dalam class dan objek yang dibuat dari class turunan, tidak diperkenankan untuk mengakses member class dari objek yang di instance langsung dari class induk ( error ).
Perkodingan akan cepat dipahami jika dilakukan sambil praktik! Tidak hanya sekedar membaca. Kesimpulan akan mengikuti seiring dengan seringnya melakukan coding
Berikutnya untuk modifier protected, mari kita lakukan uji dengan kode :
Yang akan kita operasikan sekarang member $penerbit dengan modifier protected.
Buat class turunan Penerbit dari class Buku {} :
Kemudian buat dua objek, sama seperti tadi. Satu objek untuk class induk dan satu untuk class turunan :
Di bagian bawah objek, kita akses member property $penerbit dengan objek dari class induk terlebih dahulu :
Kode lengkapnya :
Mari jalankan kode kita, apa hasilnya?
Wew, error bukan ?Kesimpulan dari dua modifier ini adalah member property tidak bisa di akses langsung dengan objek yang di instance dari class induk. Tetapi untuk untuk modifier private, di izinkan langsung mengakses member dengan objek dari class turunan.Keduanya memiliki persamaan bisa diakses baik dari objek class induk / turunan jika menggunakan method ( setter - getter ) dalam operasinya. Baca kembali : Mengenal Method Setter - Getter
0 Komentar