Keyword Static Pada OOP PHP

1. Pendahuluan

Halo teman-teman semua. apa kabar? kali ini kita akan belajar menggunakan keyword static. Keyword ini bisa dipakai bersamaan dengan keyword enkapsulasi seperti public, protected dan private. Fungsi keyword static adalah mengijinkan property atau method di akses tanpa menginisialisasikan objek lebih dulu. Cara yang digunakan untuk mengakses method atau properti static adalah dengan menyebut nama kelas diikuti titik dua 2x  "::"dan nama method atau properti.

2. Contoh Program Keyword Static dan Public

Langsung saja kita coba membuat sebuah method static. Perhatikan kode program dibawah ini.

<?php
class kelascoba{
public static function coba(){
echo "Halo, ini adalah fungsi Static";
}
}

kelascoba::coba();
//Hasil: Halo, ini adalah fungsi Static

Pada contoh kode program di atas tampak keyword static digunakan setelah public. Umumnya keyword static berbarengan dengan public. Method yang di deklarasikan sebagai static boleh diakses secara langsung tanpa mencetak objek. Cara memanggil method static tersebut dalah dengan menyebutkan nama kelas diikuti dengan titik dua ":" 2x kemudian nama method. 

Keyword static juga dapat diterapkan bersama dengan protected. Untuk pengujiannya perhatikan kode program berikut ini.

3. Contoh Program Keyword Static dan Protected

Keyword static juga dapat diterapkan bersama dengan protected. Untuk pengujiannya perhatikan kode program berikut ini.

<?php
class kelascoba{
protected static function coba(){
echo "Halo, ini adalah fungsi Static";
}
}

class kelascoba2 extends kelascoba{
public static function tes(){
kelascoba::coba();
}
}
kelascoba2::tes();
//Hasil: Halo, ini adalah fungsi Static

Pada kode program di atas. kelascoba diturunkan oleh kelas coba2. Fungsi tes pada kelascoba2 mencoba mengakses method static pada kelascoba dan berhasil. 

4. Contoh Program Keyword Static dan Private

Sekarang kita coba untuk enkapsulasi private. Kita tau keyword private ini hanya boleh diakses oleh kelas bersangkutan sendiri.

<?php
class kelascoba{
private static function coba(){
echo "Halo, ini adalah fungsi Static";
}
public static function tes(){
kelascoba::coba();
                //$this->coba();
}
}

kelascoba::tes();
//Hasil: Halo, ini adalah fungsi Static

Ternyata fungsi static juga dapat dipanggil dalam enkapsulasi private. Sebaliknya, jika dipanggil dengan keyword $this akan menimbulkan error Uncaught Error: Using $this when not in object context in

5. Contoh Program Keyword Static Properti

Kali ini kita akan mencoba mengakses properti menggunakan keyword static. Perhatikan contoh program berikut:

<?php
class kelascoba{
public static $a;
public static function coba(){
echo "a =".kelascoba::$a;
}
}
kelascoba::$a=10;
kelascoba::coba();
//Hasil: a = 10

Pada contoh program di atas baris ketiga dari bawah tampak properti a di isi nilai 10. Properti yang memiliki keyword static juga dapat diakses tanpa menginisialisasi kelas.

6. Contoh Program Keyword Static Menggunakan Objek

Kita tau bahwa tujuan membuat static adalah agar tidak perlu melalui objek. Sekarang kita akan coba menjalankan fungsi static dengan objek.

<?php
class kelascoba{
private static function coba(){
echo "Halo, ini adalah fungsi Static";
}
public static function tes(){
kelascoba::coba();
}
}
$coba=new kelascoba;
$coba->tes();
//Hasil: Halo, ini adalah fungsi Static

Pada hasil percobaan di atas ternyata keyword static tidak masalah saat diakses melalui objek.

7. Kesimpulan

Dari beberapa percobaan di atas dapat di ambil beberapa kesimpulan sebagai berikut.
  • Keyword static di deklarasikan sebelum nama method atau properti.
  • Mengakses method atau properti static adalah dengan menyebut nama kelas di ikuti titik dua 2x "::" dan nama method atau properti. (namakelas::method;)
  • $this tidak dapat digunakan bila tidak menginisialisasi objek.
  • Keyword static dapat di akses melalui objek.

Terima kasih telah membaca artikel ini sampai selesai. Dukung kami dengan subscribe channel youtube kami. terima kasih...



Popular posts from this blog

Cara Menggunakan Template Admin LTE Sebagai Template Web Dinamis

Aplikasi CRUD menggunakan Template Admin LTE

Cara membuat Link ke Halaman lain dan Link ke bagian Halaman