Pada kesempatan kali ini saya akan menjelaskan perbedaan protected, private dan public di oop php. Perlu teman-teman ketahui sebelumnya, di dalam OOP terdapat istilah yang biasa disebut dengan Encapsulation atau Enkapsulasi. Istilah tersebut terkait dengan aksesibilitas properties di dalam suatu class. Dengan encapsulation tersebut, teman-teman bisa mengatur properti-property yang dapat diakses di dalam class, atau tidak. Dan dari masing-masing nya memiliki fungsi yang berbeda, dan berikut beberapa diantaranya :
- Public berfungsi untuk memberikan akses properti yang dapat diakses dari mana saja
- Private berfungsi untuk memberikan akses properti yang hanya dapat diakses dari dalam class tersebut
- Protected berfungsi untuk memberikan akses properti yang hanya dapat diakses dari dalam class atau turunan dari class (inheritanced class) tersebut.
Pengertian Hak Akses Public
Ketika sebuah property maupun method di set menjadi public, maka seluruh kode program di luar maupun didalam dari class bisa mengakses property maupun method tersebut, termasuk juga untuk class turunannya. Berikut contoh penulisan ketika teman-teman menggunakan public property dan public method dengan oop:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php class Motor{ public $nama; // buat public property public function jalan() { // buat public method return "Menjalankan Motornya"; } } $aksi_motor = new motor(); // buat objek dari class laptop (instansiasi) $aksi_motor->nama="Brian Abraham "; // set property echo $aksi_motor->nama; // tampilkan property echo $aksi_motor->jalan(); // tampilkan method |
Pengertian Hak Akses Private
Ketika sebuah property maupun method di set menjadi private, maka yang bisa mengaksesnya adalah hanya class itu sendiri, Dan class lain maupun class turunannya tidak bisa mengakses property atau method tersebut. Berikut contoh penulisan ketika teman-teman menggunakan private property dan private method dengan oop:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<?php class Motor{ private $nama = 'Brian Abraham'; // buat public property public function jalan() { // buat public method return $this->nama; } } class Kendaraan extends Motor{ public function jalan() { // buat public method return $this->nama; } } $aksi_motor = new motor(); // buat objek dari class motor (instansiasi) $aksi_kendaraan = new kendaraan(); // buat objek dari class kendaraan (instansiasi) echo $aksi_motor->jalan(); // jalankan method dari class motor echo $aksi_kendaraan->jalan(); // jalankan method dari class kendaraan |
Pengertian Hak Akses Protected
Ketika sebuah property maupun method di set menjadi protected, maka yang bisa mengaksesnya adalah class itu sendiri atau turunan dari class tersebut namun tidak bisa diakses dari luar class maupun turunan dari class tersebut. Berikut contoh penulisan ketika teman-teman menggunakan protected property dan protected method dengan oop:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php class Motor{ protected $nama; // buat public property public function jalan() { // buat public method return "Brian Abraham"; } } $aksi_motor = new motor(); // buat objek dari class motor (instansiasi) echo $aksi_motor->nama; // jalankan property dari luar class motor echo $aksi_motor->jalan(); // jalankan method dari class motor |
Sampai disni penjelasan saya mengenai perbedaan protected, private dan public di oop php, semoga bermanfaat.