Anda di halaman 1dari 19

Visibilitas Member

PEMROGRAMAN WEB II
PERTEMUAN 17

Sampai dimana kemaren


ya ?

Sampai sini : Method dengan Objek Lebih dari Satu


$objOrang = new orang();

$objOrang2->berbicara();

$objOrang->nama=Romi
Nurdin;

echo <br/>;

$objOrang->umur=16;

$objOrang2->statusUsia();
echo <br/><br/>;
?>

$objOrang->berbicara();
echo <br/>;
$objOrang->statusUsia();
echo <br/><br/>;

$objOrang2 = new orang();


$objOrang2->nama=Mesut
Ozil;
$objOrang2->umur=25;

Sampai sini : Keluaran Yang Dihasilkan

Hallo, nama saya Romi Nurdin


Di bawah Umur
Hallo, nama saya Mesut Ozil
Dewasa

VISIBILITAS MEMBER
Merupakan salah satu kelebihan dari OOP
untuk mengatur aksesibilitas dari member
(baik atribut ataupun method).
Pengaturan aksesibilitas :
Apakah member
semua ?

dapat

diakses

secara

global

Apakah member hanya dapat diakses oleh Class


nya sendiri ?
Apakah member hanya dapat diakses oleh Class
nya sendiri dan Class turunannya ?

VISIBILITAS MEMBER
Pengaturan aksesibilitas :
Apakah member
diakses
secara
semua ?

dapat
global

Apakah member hanya


dapat diakses oleh Class
nya sendiri ?
Apakah member hanya
dapat diakses oleh Class
nya sendiri dan Class
turunannya ?

Public
Private
Protected

ILUSTRASI : PUBLIC

Pak
Samsul

Uang
adalah
member
yang
dimiliki oleh Pak
Samsul
Dan uang dibagikan
gratis
sehingga
siapa
saja
bisa
menggunakan-nya
Artinya
Member
Class Pak Samsul
sifatnya PUBLIC

ILUSTRASI : PRIVATE
No
Way !!!
Pak
Samsul

Uang adalah member


yang dimiliki oleh
Pak Samsul
Uang
hanya
bisa
digunakan oleh Pak
Samsul, kata Pak
Samsul, Sorry ya ...
Ini Cuma buat GUE !
Artinya
Member
Class Pak Samsul
sifatnya PRIVATE

ILUSTRASI : PROTECTED
Uang adalah member
yang dimiliki oleh
Pak Samsul

Pak
Samsul

Uang
hanya
bisa
digunakan oleh Pak
Samsul dan Anakanak Pak Samsul

Anak-Anak Pak
Samsul

Artinya
Member
Class Pak Samsul
sifatnya
PROTECTED

Lets
CODE !!!

PUBLIC
<?php

$objMhs = new mahasiswa();

class mahasiswa {
public $nim;
public $nama;
public $nilai;

Visibilitas
PUBLIC pada
atribut
Visibilitas
PUBLIC pada
method

public function prosesNilai() {


echo Mahasiswa dengan NIM $this>nim;
echo <br/>;
echo dengan Nama $this->nama;
echo <br/>;
echo Mendapatkan Nilai $this>nilai;

$objMhs->nim=131089;
$objMhs->nama=Ahmad Farisi;
$objMhs->nilai=89;

$objMhs->prosesNilai();
?>

PERHATIKAN
Inisialisasi atribut
dan menjalankan
method dilakukan di
luar class
mahasiswa

Keluaran Yang Dihasilkan

Mahasiswa dengan Nim 131089


Dengan Nama Ahmad Farisi
Mendapatkan Nilai 89

PRIVATE
<?php

Ganti Public tadi


dengan Visibilitas
class mahasiswa {
PRIVATE pada
private $nim;
atribut
private $nama;

Visibilitas
private $nilai; PUBLIC pada
method biarkan
saja
public function prosesNilai() {
echo Mahasiswa dengan NIM $this>nim;
echo <br/>;
echo dengan Nama $this->nama;
echo <br/>;
echo Mendapatkan Nilai $this>nilai;

$objMhs = new mahasiswa();


$objMhs->nim=131089;
$objMhs->nama=Ahmad Farisi;
$objMhs->nilai=89;

$objMhs->prosesNilai();
?>

PERHATIKAN
Inisialisasi atribut
dan menjalankan
method dilakukan di
luar class
mahasiswa

Keluaran Yang Dihasilkan

Fatal error: cannot access


private property mahasiswa::
$nim in
C:\Uniserver\www\phpoop\visPriv
ate.php on line 17
MENGAPA ???
Mengapa ini
Terjadi ?
Ada apa ?
Siapa yang salah ?

TAMBAHKAN SATU METHOD : isiNilai


public function isiNilai($varNim, $varNama,
$varNilai)

{
$this->nim = $varNim;
$this->nama = $varNama;
$this->nilai = $varNilai;
}

PRIVATE
<?php

$objMhs = new mahasiswa();

class mahasiswa {

$objMhs->isiNilai(131089,Ahmad
Farisi,89);

private $nim;
private $nama;

$objMhs->prosesNilai();

private $nilai;

?>

public function isiNilai($varNim, $varNama,


$varNilai) {
$this->nim = $varNim;
$this->nama = $varNama;
$this->nilai = $varNilai;
}
public function prosesNilai() {
echo Mahasiswa dengan NIM $this->nim <br/>;
echo dengan Nama $this->nama <br/>;
echo Mendapatkan Nilai $this->nilai;
}

PERHATIKAN
Method
isiNilai( ) dan
prosesNilai( )
bersifat public,
sehingga bisa
dipanggil di luar
kelas

Keluaran Yang Dihasilkan

Mahasiswa dengan NIM 131089


dengan Nama Ahmad Farisi
Mendapatkan Nilai 89

PROTECTED
Penggunaan Protected akan terjawab
di pertemuan tentang Penerapan
Enkapsulasi, Pewarisan, dan
Polimorfisme.
So, dont go anywhere and stay tune
!

Sampai
Jumpa di
Pertemuan
Selanjutnya
Materi :
Konstruktor
dan
Destruktor
When you wanna do something
good, said to yourself that YOU
CAN !!!

Anda mungkin juga menyukai