Wednesday, October 3, 2012

Pembuatan Instant Method

Dalam pembuatan method pada class, bisa dibuat menjadi instant method. Ini digunakan untuk tidak mendeklarasikan class terlebih dahulu. Sebelum pembuatan instant method, ada baiknya mengenal struktur class dan method terlebih dahulu.

class [nama_class] {extends [nama_class]} {

   /*variable class*/
   {var/private/public/protected}[nama_variable];

   {private/public/protected}function [nama_method](){
      /* code here*/
   }

}


Untuk pendeklarasian class dan pemanggilan method nya bisa seperti ini:

$obj = new [nama_class];
$obj->[nama_method];

Contoh pembuatan class dan penggunaannya:

Class Latihan{
   public function display(){
      echo "Menampilkan";
   }
}

$objLatihan = new Latihan();
$objLatihan->display();

Maka nanti yang akan tampil di browser adalah:

Menampilkan

Bagaimana untuk pembuatan instant method? Langkah yang perlu dilakukan adalah membuat variable private static di class tersebut. Dan pembuatan static method.


class [nama_class] {extends [nama_class]} {

   /*variable class*/
   static [nama_variable];
   {var/private/public/protected}[nama_variable];

   {private/public/protected}function [nama_method](){
      /* code here*/
   }

   static function [nama_method]() {
      if (!isset(self::[nama_variable]))
         self::{nama_variable} = new {nama_class}();

      return self::[nama_variable];
   }
}

Contoh pembuatan class dan penggunaannya:


Class Latihan{
   private static $instance;

   public function display(){
      echo "Menampilkan Instant Method";
   }

   static function Instance() {
      if (!isset(self::$instance))
         self::$instance = new Latihan();

      return self::$instance;
   }
}

Latihan::Instance()->display();


Maka nanti yang akan tampil di browser adalah:

Menampilkan Instant Method


Share this

0 Comment to "Pembuatan Instant Method"

Post a Comment