♠ Posted by Unknown in OOP at 01.46
Pengertian Konstanta Class dalam Pemrograman Objek
Pengertian Konstanta Class
Konstanta Class atau class constant adalah konstanta yang berada di dalam class. Selain memiliki property dan method, PHP juga membolehkan kita menggunakan konstanta (constant) di dalam class.
Sebagaimana sifat konstanta reguler, class constant juga tidak bisa diubah nilainya ketika sudah didefenisikan. Untuk membuat class constant di dalam PHP, kita menggunakan perintah: const.
class nama_class { const NAMA_KONSTANTA = nilai_konstanta;}Penulisan nama konstanta dengan huruf besar bukan keharusan, namun lebih kepada kebiasaan programmer PHP agar mudah dibedakan dengan variabel yang umumnya ditulis dengan huruf kecil.
Jika kita memiliki class laptop dan konstanta MERK, maka cara mengaksesnya adalah sebagai berikut:
laptop::MERK;Cara Penulisan Konstanta Class dalam PHPUntuk melihat cara penulisan dan penggunaan konstanta class, kita akan langsung menggunakan kode program. Berikut adalah contoh class laptop dengan sebuah konstanta DOLLAR:
<?php// buat class laptopclass laptop { // buat konstanta const DOLLAR = '12000';} // panggil konstanta classecho "Harga dollar saat ini = Rp. ".laptop::DOLLAR;// hasil: Harga dollar saat ini = Rp. 12000?>Perhatikan bahwa untuk mengakses class constant DOLLAR milik class laptop, kita menggunakan perintah laptop::DOLLAR.
Selain mengakses konstanta dengan menggunakan nama class, PHP juga memiliki cara lain, yakni dengan mengaksesnya dari objek. Fitur ini hanya bisa digunakan untuk PHP versi 5.3 keatas. Berikut contohnya:
<?php// buat class laptopclass laptop { // buat konstanta const DOLLAR = '12000';} // buat objek dari class laptop (instansiasi)$laptop_baru = new laptop(); // panggil konstanta classecho "Harga dollar saat ini = Rp ".$laptop_baru::DOLLAR;// hasil: Harga dollar saat ini = Rp. 12000?>
PHP versi 5.3 keatas juga membolehkan pemanggilan property dengan nama class yang berada di dalam variabel. Berikut contohnya:
<?php// buat class laptopclass laptop { // buat konstanta const DOLLAR = '12000';} // buat variabel dengan nama class$nama = "laptop"; // panggil konstanta classecho "Harga dollar saat ini = Rp. ".$nama::DOLLAR;// hasil: Harga dollar saat ini = Rp. 12000?>Pada kode program diatas, saya tidak menggunakan objek, tetapi membuat variabel $nama dan memberikannya nilai laptop. Karena nama class kita juga adalah laptop, maka PHP membolehkan pemanggilan kosntanta DOLLAR dengan $nama::DOLLAR. Nama variabel yang digunakan boleh bebas, selama nilainya cocok dengan nama class tempat konstanta itu berada.
Cara Mengakses Konstanta Class dari dalam Class itu Sendiri
Untuk mengakses class constant dari dalam class itu sendiri, PHP menggunakan cara yang sama dengan static property, yaitu dengan perintah self::nama_konstanta. Berikut contohnya:
<?php// buat class laptopclass laptop { // buat konstanta const DOLLAR = '12000'; // buat method public function beli_laptop($harga) { return "Beli Komputer Baru, Rp. ".$harga*self::DOLLAR; }} // buat objek dari class laptop (instansiasi)$laptop_baru=new laptop(); echo $laptop_baru->beli_laptop(400);// hasil: Beli Komputer Baru, Rp. 4800000?>
dibuat class laptop dengan sebuah method beli_laptop(). Method beli_laptop() digunakan untuk menghitung harga laptop dengan mengalikan konstanta class DOLLAR dengan parameter $harga. Perhatikan bahwa kita mengakses class constant dengan perintah self::DOLLAR.
Cara Mengakses Konstanta Class milik Parent Class
Pewarisan class (class inheritance) dari sebuah class kedalam class lain, juga akan menurunkan konstanta. Jika kebetulan class yang diturunkan (child class) memiliki nama konstanta yang sama dengan parent class, konstanta tersebut akan ‘tertimpa’.
PHP menggunakan operator parent::nama_konstanta untuk mengakses konstanta milik parent class.
Agar lebih mudah, berikut adalah contoh kode program penggunaan operator parent::nama_konstanta:
dibuat konstanta DOLLAR di dalam class komputer. Class komputer kemudian diturunkan ke dalam class laptop. Di dalam class laptop, saya mendefenisikan kembali konstanta DOLLAR. Karena kedua konstanta ini memiliki nama yang sama, maka saya harus menggunakan perintah parent::DOLLAR untuk memanggil konstanta DOLLAR miliki class komputer.
Walaupun konstanta class jarang digunakan di dalam pemograman umum, namun fitur yang ditawarkan mungkin bisa membantu untuk penyelesaian kasus-kasus tertentu.
Sumber : http://www.duniailkom.com
PHP menggunakan operator parent::nama_konstanta untuk mengakses konstanta milik parent class.
Agar lebih mudah, berikut adalah contoh kode program penggunaan operator parent::nama_konstanta:
<?php// buat class komputerclass komputer { // buat konstanta class komputer const DOLLAR = '11000';}// turunkan class komputer ke class laptopclass laptop extends komputer { // buat konstanta class laptop const DOLLAR = '12000'; // buat method dengan konstanta class komputer public function beli_komputer($harga){ } // buat method dengan konstanta class laptop public function beli_laptop($harga){ return "Beli Komputer Baru, Rp .".$harga*self::DOLLAR; }} // buat objek dari class laptop (instansiasi)$laptop_baru=new laptop(); echo $laptop_baru->beli_laptop(400);echo "<br />";echo $laptop_baru->beli_komputer(400);?>Walaupun konstanta class jarang digunakan di dalam pemograman umum, namun fitur yang ditawarkan mungkin bisa membantu untuk penyelesaian kasus-kasus tertentu.
Sumber : http://www.duniailkom.com


0 komentar:
Posting Komentar