Tutorial Belajar PHP Part 31 – Mengatur Visibility pada Class PHP (Private, Protected, Public, Default)

Selamat datang di warung belajar, pada tutorial ini kita masih melanjutkan pembahasan mengenai seri tutorial PHP, di Part 31 kita akan membahas bagaimana cara mengatur Visibility pada Class PHP.

Kita kenalan dulu dengan istilah Visibility, Visibility atau Visibilitas adalah fitur yang ada di OOP, yang digunakan mengatur hak akses terhadap property dan method dari sebuah class, jadi dengan menggunakan visibility ini anda dapat mengatur, property dan method tersebut bisa diakses darimana saja.

Hal ini sangat diperlukan jika anda bekerja dalam tim, anda dapat membatasi pengaksesan property ataupun method secara langsung.

Gimana udah kenal kan dengan Visibility, berikutnya kita akan belajar, tingkatan hak akses yang ada di OOP, Visibility di OOP dibagi menjadi 4 hak akses, antara lain :

  • Private
  • Protected
  • Public
  • Default

Baik kita akan mulai pembahasannya satu persatu untuk tipe hak akses yang ada OOP.

 

Private

Visibility Private adalah hak akses yang paling rendah, jika property atau method yang menggunakan hak akses private, maka property atau method tersebut hanya dapat diakses di lingkup class dimana property atau method tersebut didefinisikan.

Untuk memberikan hak akses private pada property atau method gunakan keyword private didepan property ataupun method.

Agar teman – teman tidak bingung perhatikan contoh berikut ini :

Jika skrip diatas dijalankan maka hasilnya adalah :

Keterangan :

  • Pada Line 4,5 kita membuat class dengan nama komputer, dalam class komputer memiliki 2 property ( property prosesor bersifat public, dan property memory bersifat private )
  • Pada Line 6 kita juga membuat 1 method dengan nama memutar_video yang bersifat private juga.
  • pada line 12 kita membuat object dengan nama komputer_budi dengan class komputer
  • pada line 13 kita memanggil property prosesor dengan menggunakan object komputer_budi, maka di browser menampilkan tulisan Core i7, value dari property prosesor dapat dipanggil melalui object komputer_budi, karena property prosesor memiliki hak akses public
  • pada line 15 kita memanggil property memory dengan menggunakan object komputer_budi, maka dibrowser akan menampilkan pesan error, begitu juga saat kita memanggil method memutar_video line 17 juga menampilkan pesan error, hal tersebut dikarenakan kita menggunakan hak akses private, dibagian property memory, dan method memutar_video

 

Jadi bisa disimpulkan visibility private ini hanya dapat diakses didalam classnya sendiri, untuk contohnya seperti berikut ini :

Jika dijalankan hasilnya adalah sebagai berikut :

Keterangan :

  • Pada Line 5 kita membuat property memory, dengan hak akses private.
  • lalu jika kita ingin menampilkan nilai property atau method yang bersifat private, kita perlu membuat method lain yang tidak bersifat private, lalu memanggil nilai property atau method di method baru tersebut, dalam contoh ini kita buat method dengan nama get_data pada line 7, kita menuliskan perintah return $this->prosesor.” – “.$this->memory; yang artinya mengembalikan nilai dari property prosesor dan memory
  • sehingga ketika method get_data dipanggil melalui object komputer_budi, nilai dari property prosesor dan memory dapat ditampilkan

 

Protected

Visibility berikutnya adalah protected, jika property atau method menggunakan hak akses protected maka, property atau method tersebut hanya bisa diakses melalui class itu sendiri dan class turunannya.

Untuk menggunakan visibility protected anda dapat menggunakan perintah protected

sebagai contoh perhatikan skrip dibawah ini :

Jika dijalankan maka hasilnya adalah sebagai berikut :

Keterangan :

  • Perhatikan pada line 4 dan 5 class komputer, kita memiliki 2 property (prosesor, memory) memiliki visibility protected
  • Perhatikan pada line 27, kita coba mengakses method get_data_komputer melalui object komputer_budi, dimana method get_data_komputer mengakses nilai property prosesor, dan property memory yang visibility protected, maka dibrowser ditampilkan text “Core i7 4 GB”
  • Jadi nilai dari property yang visibility protected dapat diakses  melalui method yang berada didalam class itu sendiri.
  • Perhatikan pada line 29, kita coba mengakses method get_data_laptop melalui object laptop_budi, object laptop_budi menggunakan class laptop, dimana class laptop merupakan class turunan dari class komputer, didalam method get_data_laptop kita mengekses nilai property prosesor dan property memory yang visibility protected, maka dibrowser ditampilkan text “Core i7 4 GB”, jadi nilai property yang visibility protected tetap dapat diakses dalam class turunannya, dalam contoh ini adalah class laptop yang merupakan turunan dari class komputer.
  • Perhatikan pada line 31 kita coba mengakses method memutar_video yang memiliki visibility protected, kita mengakses method tersebut melalui object komputer_budi, hal tersebut akan menghasilkan error seperti gambar diatas, dikarenakan kita mengakses method protected langsung melalui object, hal tersebut tidak diperbolehkan untuk property atau method yang memiliki visibility protected.

 

Public

Visibility berikutnya adalah public, visibility public adalah visibilitas tertinggi yang ada pada OOP, jika sebuah property atau method menggunakan visibility public, maka property atau method tersebut dapat diakses melalui class itu sendiri, ataupun melalui object.

Untuk menggunakan visibility public, gunakan keyword public diawal dari property ataupun method.

Sebagai contoh perhatikan skrip dibawah ini :

Jika file tersebut diakses maka hasilnya adalah sebagai berikut :

Keterangan :

  • Pada line 4 kita membuat property prosesor dengan visibility public
  • Pada line 5 kita membuat property memory dengan visibility public
  • Pada line 6 kita membuat method memutar_video dengan visibility public
  • Lalu kita coba mengakses property prosesor melalui object komputer_budi maka ditampilkan tulisan core i7
  • Lalu kita coba mengakses property memory melalui object komputer_budi maka ditampilkan tulisan core 4 GB
  • Lalu kita coba mengakses method memutar_video melalui object komputer_budi maka ditampilkan tulisan Komputer memutar video
  • Jadi bisa kita simpulkan kita bisa mengakses nilai property atau method dengan visibility public, melalui class itu sendiri ataupun melalui object

 

 

Default

Yang terakhir adalah visibility jenis default, istilah default disini apabila kita tidak mendeklarasikan visibility pada bagian property ataupun method, maka visibilty akan dianggap bernilai public, perhatikan 2 perintah membuat property berikut ini :

  • public $prosesor
  • $prosesor

perintah diatas akan dianggap sama, yaitu membuat property dengan nama prosesor dengan visibility public

perhatikan 2 perintah membuat method berikut ini :

  • public function memutar_video()
  • function memutar_video()

perintah diatas akan dianggap sama, yaitu membuat method dengan nama memutar_video dengan visibility public

 

Baik sekian dulu teman – teman pembahasan mengenai beberapa Visibility pada Class PHP yaitu private, protected, public, dan default, jika ada yang ingin didiskusikan silahkan di kolom komentar, sekian dulu sampai jumpa di seri tutorial php selanjutnya.

 

 

 

 


ANDA INGIN SERIUS BELAJAR PEMROGRAMAN PHP ?

Seperti yang anda ketahui bahwa saat ini skill di bidang pemrograman sangatlah dibutuhkan, salah satunya adalah pemograman PHP.
Untuk anda yang ingin serius belajar pemrograman PHP, Warung Belajar Memiliki Beberapa Paket Tutorial yang bisa membantu anda dalam belajar Pemrograman PHP, dari mulai step – step dasar hingga mampu membuat aplikasi berbasis web dengan menggunakan PHP.

Paket Tutorial ini berisi video tutorial belajar pemrograman berbahasa indonesia, cocok sekali untuk anda yang sedang belajar pemrograman PHP, bahkan untuk orang awam sekalipun.

Paket Tutorial ini juga dilengkapi dengan study kasus yang akan mempermudah pemahaman anda dalam belajar pemrograman, Mari berinvestasi untuk menambah skill dalam menguasai Pemrograman PHP

One thought on “Tutorial Belajar PHP Part 31 – Mengatur Visibility pada Class PHP (Private, Protected, Public, Default)

Leave a Reply

Your email address will not be published. Required fields are marked *