PHP OOP: Enkapsulasi dan penggunaan klausa $this

Assalamu'alaikum warahmatullahi wabarakatuh.

Halo teman-teman semuanya! Bagaimana kabarnya? Semoga dalam kondisi dan keadaan yang prima dan baik-baik saja ya, sekarang di Indonesia keadaan covid sudah makin membaik nih, tapi jangan lupa yah teman-teman harus tetap jaga protokol kesehatan dan selalu berdoa demi keselamatan bersama!

Perkenalkan kembali lagi bersama saya Ilham, saya dari kelas XI RPL 2 yang sekarang dalam artikel kali ini, kita akan membahas tentang OOP pada PHP lagi lanjutan sebelumnya mengenai apa itu enkapsulasi dan juga penggunaan klausa $this  tanpa berlama-lama lagi mari langsung saja kita ke bahasan materinya!


Enkapsulasi 

Enkapsulasi sebuah metode untuk mengatur property dan method, dengan cara membatasi hak aksesnya. Dengan enkapsulasi, kita bisa membuat pembatasan akses kepada property dan method, sehingga hanya property dan method tertentu saja yang bisa diakses dari luar class.

Ada 3 kata kunci untuk membatasi property dan method, yaitu Public, Protected dan Private

Public 

Jka sebuah method dinyatakan sebagai public, maka seluruh kode program di luar class bisa mengaksesnya, termasuk juga oleh class turunan

contoh penulisannya: 
class Manusia
{
    // Public Property atau atribut
    public $nama;

    // Public Method
    public function bernafas()
    {
        return 'Bernafas';
    }
}

// Intansiasi Class Manusia
$ilham = new Manusia();

// Set Property
$ilham->nama = 'ilham';

// Tampilkan property ke layar
echo $ilham->nama;
echo "<br/>";

// Tampilkan method ke layar
echo $ilham->bernafas();
Jika hak akses dari property tidak dicantumkan maka secara otomatis PHP akan menganggapnya sebagai default yang memiliki hak seperti public

Protected 

Jka sebuah method dinyatakan sebagai protected, maka property atau method tersebut tidak dapat diakses dari luar kelas, namun dapat diakses oleh class itu sendiri atau turunan classnya.  

Jika kita memberi hak akses protected dan kita ternyata mencoba mengaksesnya dari luar class maka akan terjadi error, berikut contoh code programnya: 
class Manusia
{
    // Protected Property
    protected $nama;

    // Protected Method
    protected function bernafas()
    {
        return 'Bernafas';
    }
}

// Intansiasi Class Manusia
$ilham = new Manusia();

// Set Property
$ilham->nama = 'ilham';
// ! Fatal error: Cannot access protected property Manusia::$nama

// Tampilkan property ke layar
echo $ilham->nama;
// ! Fatal error: Cannot access protected property Manusia::$nama

// Tampilkan method ke layar
echo $ilham->bernafas();
// ! Fatal error: Call to protected method Manusia::bernafas() 
Jadi property atau method yang diberikan hak akses tipe protected hanya dapat diakses oleh class itu sendiri atau turunan classnya saja. 

Private 

Jka sebuah method dinyatakan sebagai private, maka yang dapat hanya mengakses hanyalah class itu sendiri. Class lain takkan dapat mengaksesnya, termasuk juga class turunan.  


contoh penulisannya: 
class Manusia
{
    // Private Property
    private $nama = 'Ilham';

    // Public Method
    public function tampilkanNama()
    {
        return $this->nama;
    }
}

// Intansiasi Class Manusia
$ilham = new Manusia();

// Tampilkan property ke layar
echo $ilham->nama;
// ! Fatal error: Cannot access private property Manusia::$nama

// Tampilkan method ke layar
echo $ilham->tampilkanNama();
Variabel $this 

Variabel $this adalah sebuah variabel khusus dalam OOP PHP yang digunakan sebagai penunjuk kepada objek, ketika kita mengaksesnya dari dalam class. $this disebut dengan istilah: pseudo-variable.  


contoh penulisannya: 
class Manusia
{
    // Private Property
    private $nama = 'Ilham';

    // Public Method
    public function bernafas()
    {
        return "$this->nama sedang bernafas";
    }
}

// Intansiasi Class Manusia
$ilham = new Manusia();

// Tampilkan method ke layar
echo $ilham->bernafas();
Dikarenakan didalam class Manusia saya sudah set $nama menjadi 'Ilham' maka $nama sudah terdapa nilainya yaitu 'Ilham'

Lalu pada fungsi bernafas saya menuliskan $this->nama yang dimana $this akan merujuk ke objek tersebut yakni Manusia.  

Ketika dijalankan di browser: 


Mungkin cukup sekian materi OOP PHP: bagian Enkapsulasi dan klausa variabel $this-nya. Cukup singkat materinya dimulai dari pengenalan hingga pengimplementasiannya. Semoga sobat-sobat codingers paham, mengerti dan menguasainya. 

Mohon maaf jika terdapat tutur kata yang tidak berkenan dihati anda. Mohon maaf atas semua kesalahan yang telah saya perbuat, tolong berikan koreksi mengenai bagian mana yang salah/kurang pas dalam postingan ini, untuk pengembangan lebih baik kedepannya.

Sekian, saya ucapkan terimakasih banyak atas waktu yang telah diluangkan, saya ucapkan kembali mohon maaf atas segalanya kesalahan. 

Wabilahiltaufik walhidayah,
Wassalamu'alaikum warahmatullahi wabarakatuh
Keep Coding Stay Awesome

0 Response to "PHP OOP: Enkapsulasi dan penggunaan klausa $this"

Post a Comment

Postingan Terbaru

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel