Belajar PHP OOP #7 : Memahami Visibility / Access Modifier

Belajar PHP OOP #7 : Memahami Visibility / Access Modifier – Halo semua nya, apa kabar ? semoga dalam keadaan baik-baik saja. Saya ucapkan selamat datang di tutorial PHP yang membahas konsep OOP dasar sampai mahir.

Pada tutorial ke 7 ini akan membahas dengan visibility atau yang biasa di sebut access modifier dalam pemrograman bahasa PHP.

Pengertian Visibility

Visibility adalah Teknik yang digunakan untuk mengatur property maupun method pada sebuah objek.

Dengan menggunakan Access Modifier nantinya akan memberi batasan akses yang di inginkan terhadap suatu objek tertentu.

3 Jenis Visiblity

Berikut ini 2 jenis keyword visibilty pada PHP :

Public

Property dan Mehod dapat di akses dari mana saja, bahkan dari luar class yang digunakan.

Penggunaan Visibilty public sebenarnya sudah ktia lakukan dari awal belajar OOP pada PHP di tutorial sebelumnya.

Protected

Penggunaan Method dan Property dapat di akses pada class itu sendiri maupun class turunannya, parent dan child.

Property dan Method yang menggunuakan visibility protected tidak dapat di instance.

Private

Digunakan hanya untuk class tertentu atau class itu sendiri. Class ini yang sangat tertutup terhadap pemanggilan / intance method maupun property.

Baca Juga : Belajar PHP OOP #6 : Cara Menggunakan Overriding di PHP

Penggunaan visibility private untuk data-data untuk class itu sendiri yang biasanya berupa data secara detail dan tidak di miliki oleh class lainnya.

Kenapa Harus menggunakan Visibilty Access Modifier ?

Seperti penjelasan sebelumnya visibility digunakan untuk batasan akses, Fungsi adanya visibilty agar terhidandar dari kesalahan program yang di jalankan dan menentukan detail pada object yang di butuhkan saja.

Jika di lihat dari kerja tim, dengan menggunakan visibilty ini maka tim lain tidak dapat menggunakan property dan method yang telah di buat ketika menggunakan keyword private.

Yuk sekarang kita buat contoh kode program PHP nya.

Contoh Penggunaan Visibility Public

Berikut ini contoh penggunaan visibility public. Silahkan buat file PHP nya dengan nama Motor.php.

Motor.php

Hasilnya :

120

Perhatikan kode di atas, terdapat 2 class tanpa menggunakan parent dan child yaitu class Motor dan class motorSport. di dalam class motorSport dengan method getSpeed() memanggil class Motor.

Class motorSport di instansiasikan dengan variable $motor, kemudian memanggil method getSpeed. Maka hasilnya yaitu nilai yang ada di dalam class Motor dengan method lihatKecepatan().

Contoh di atas membuktikan bahwa menggunakan visibility public dapat memanggil method lain pada class yang berbeda.

Contoh Penggunaan Visibity Protected

Sekarang kita buat contoh penggunaan visibility protected, contoh implementasi visibilty pada method dan property.

Silahkan buat file dengan name Motor.php

Motor.php

Hasilnya :

150

Pemanggilan method pada class Motor seperti pemanggilan biasanya, seperti pada contoh penggunaan visibility public. Dimana membuat sebuah variable $motor yang memanggil pada method getSpeed() pada class MotorGunung. isi dari getSpeed() memanggil method pada parent nya.

Sekarang kita lakukan uji coba memanggil method dengan visibilty protected dengan class lain.

Berikut ini contoh kodenya :

Motor.php

Hasilnya :

Error

Perhatikan kode di atas, bahwa terdapat class motorSport yang di dalam terdapat method getSpeed. Di dalam method getSpeed() memanggil method di mana menggunakan visibilty protected.

Hasilnya dari kode diatas ada 2 kemungkinan yaitu keterangan error maupun blank.

Hasil di atas membuktikan bahwa visibilty protedted hanya dapat di akses pada class itu sendiri mapun turunannya dan tidak dapat di akses dari class lainnya.

Contoh penggunaan Visibility Private

Berikut ini contoh kode menggunakan visibility private pada PHP.

Motor.php

Hasilnya :

300

Perhatikan kode di atas, class Motor di instansiasikan dengan variable $motor, kemudian variable motor memanggil method dengan nama lihatKecepatan(), dan di dalam method tersebut memanggil method dengan visibility private dengan nama lihatKecepatanMax() pada satu class yang sama. Maka hasilnya adalah nilai yang ada di method lihatKecepatanMax() yakni 300.

Sekarang mari kita buktikan memanggil method dari luar class.

Hasilnya :

Tidak ada / Error

Perhatikan kode di atas, object variable $motor memanggil method dengan visibilty private pada class Motor. Hal ini tidak dapat di lakukan karena private hanya dapat digunakan untuk satu class yang sama dan bukan di luar class tersebut.

Kesimpulan…

Penentuan Visibility mengacu pada data yang di akses, ketika data tersebut sifatnya dapat di akses dari manapun maka dapat menggunakan visibilty public, sedangkan data yang sifatnya rahasia pada kebutuhan menggunakan visibily private. Selain itu anda dapat menggunaka visibilty protected ketika ada komunikasi antara class child dan parent.

Sekian artikel mengenai Belajar PHP OOP #7 : Memahami Visibility / Access Modifier.

One comment

  1. […] Baca Juga : Belajar PHP OOP #7 : Memahami Visibility / Access Modifier […]

Leave a Reply