Nulis-Ilmu.com

Tutorial Elektronika dan Komputer

  • Home
  • Elektronika
  • Komputer
  • Javascript
You are here: Home / PHP / Tutorial PHP OOP Part 12 : Apa itu Static, Parent dan Self ?

Tutorial PHP OOP Part 12 : Apa itu Static, Parent dan Self ?

27 November 2014 By Eko Purnomo

Static, Parent dan Self adalah keyword pada PHP OOP yang merupakan perintah dalam membuat dan menangani sebuah static properti atau static method didalam class. Keyword “static” dipakai saat membuat static properti atau static method sedangkan keyword “parent” dan “self” dipakai untuk mengakses properti atau method tersebut didalam class dan class turunannya.

Keuntungan dari membuat static properti dan static method adalah kita bisa mengaksesnya tanpa membuat instantisasi object. Hal ini telah dibahas pada tulisan sebelumnya tentang operator Scope Resolution (::) .


Membuat Static Properti dan Static Method

Untuk membuat static properti dan static method kita menggunakan keyword “static”. Kita juga bisa menggunakan teknik enkapsulasi seperti public, private dan protected dalam membuat static properti dan static method.

Membuat Static Properti

class Classname {
public static $var = Value;
}

Membuat Static Method

class Classname {
public static function aStaticMethod() {
// ...
}
}

Contoh Membuat Static Properti dan Static Method

 <?php  
class Sekolah
{
public static $namaSekolah = 'SMPN 1 WELAHAN';

public static function showSekolah() {
return self::$namaSekolah;
}
}

?>

Mengakses Static Properti dan Static Method

Dalam mengakses  static properti dan static method kita menggunakan operator scope resolution (::). Kita bisa mengakses  static properti dan static method didalam dan diluar class. Untuk mengakses dari luar class kita gunakan nama class, operator :: dan nama static, contoh : MyClass::CONSTANT.

Dan untuk mengakses  static properti dan static method didalam class kita gunakan keyword “self”. Untuk mengakses  static properti dan static method pada class induk (diakses dari class turunan) kita gunakan keyword “parent”. Dengan demikian kita tidak perlu menggunakan variabel $this saat akan mengakses static properti dan static method didalam class.

Mengakses Static Properti dan Static Method pada class (Induk)

 <?php  
class Sekolah {
public static $namaSekolah = 'SMPN 1 WELAHAN';

public function showSekolah() {
return self::$namaSekolah;
}
}

//mengakses static properti secara langsung
print Sekolah::$namaSekolah . "<br/>";

//mengakses static properti dengan static method
print Sekolah::showSekolah() . "<br/>";
?>

Mengakses Static Properti dan Static Method pada class turunan

 <?php  
class Sekolah
{
public static $namaSekolah = 'SMPN 1 WELAHAN';

public static function showSekolah() {
return self::$namaSekolah;
}
}

class Siswa extends Sekolah
{
public static $namaSiswa = 'SABRINA';

public static function showSiswa() {
return self::$namaSiswa ." dari ".parent::$namaSekolah;
}
}

//mengakses static properti class induk secara langsung
print Sekolah::$namaSekolah . "<br/>";

//mengakses static properti class induk dengan method
print Sekolah::showSekolah() . "<br/>";

//mengakses static properti class anak secara langsung
print Siswa::$namaSiswa . "<br/>";

//mengakses static properti class induk dan class anak dengan method
print Siswa::showSiswa() . "<br/>";
?>

Pada program diatas kita membuat dua cuah class, yaitu class Sekolah (class induk) dan class Siswa yang merupakan turunan dari class Sekolah.

Pada class Sekolah terdapat sebuah static properti $namaSekolah dan static method showSekolah(). Pada method showSekolah terlihat kita mengakses static properti $namaSekolah dengan keyword self.

Pada class Siswa yang merupakan turunan dari class Sekolah, sebuah static properti $namaSiswa dan static method showSiswa(). Pada method showSiswa ini terlihat kita mengakses dua buah static properti yaitu $namaSekolah dan $namaSiswa.

Karena  berada pada class induk maka kita mengakses Statis properti $namaSekolah dengan keyword parent. Sementara untuk mengakses static properti $namaSiswa kita menggunakan keyword self.

Jika script diatas dijalankan akan tampil seperti ini :

SMPN 1 WELAHAN
SMPN 1 WELAHAN
SABRINA
SABRINA dari SMPN 1 WELAHAN

Referensi :

  • //php.net/manual/en/language.oop5.static.php

Filed Under: PHP

Kategori

  • Android
  • Blogging
  • CSS
  • Desain
  • Elektronika
  • HTML
  • Internet
  • Javascript
  • Komputer
  • Mikrokontroler
  • PHP
  • Website

Pos-pos Terbaru

  • Rangkaian Adaptor 12 Volt 3 Ampere
  • 10 Aplikasi Transportasi Online Terbaru 2018
  • 3 Cara Screenshot di Laptop Windows
  • Rangkaian Adaptor 12V 35Ampere
  • Komunitas Desainer Kampung Jepara
  • Solder Yang Bagus dan Berkualitas
  • Cara Melewatkan Parameter ke dalam Fungsi pada Bahasa C
  • Parameter Dalam Bahasa C: Formal dan Aktual
  • Prototipe Fungsi dalam Bahasa C
  • Cara Menggunakan Fungsi dalam Bahasa C
  • Home
  • Privacy
  • Disclaimer
  • Kontak

Copyright © 2024 ยท Nulis-ilmu.com