Pertemuan 3 - PBO
Pertemuan 3 - PBO
Berorientasi
Objek
Pertemuan 3
Class, Object, dan Properties
Sebuah properties dari suatu class dapat Anda bayangkan sebagai sifat atau informasi yang
melekat dari suatu obyek. Sebagai contoh misalkan kita pandang sebuah obyek ‘mahasiswa’,
maka properties dari mahasiswa beberapa diantaranya adalah: nim, nama, alamat, nama orang
tua, jurusan, fakultas dsb.
<?php
class Kendaraan
{
var $jumlahRoda=4;
var $warna;
var $bahanBakar="Premium"
var $harga=100000000;
var $merek;
Contoh implementasi :
var $tahunPembuatan=2004;
function statusHarga()
{
Apa tampilan output dari script code di samping ini ?
if($this->harga > 50000000)
{
$status = "Harga Kendaraan Mahal";
}
else
{
$status = "Harga Kendaraan Murah";
}
function statusSubsidi()
{
if($this -> $tahunPembuatan < 2005 &&
bahanBakar=="Premium")
$status = "DAPAT SUBSIDI";
}
else
$status = "TIDAK DAPAT SUBSIDI";
}
return $status;
}
}
//instansiasi kelas
$ObjekKendaraan = new Kendaraan();//pembuatan objek dari kelas
echo "jumlahRoda : ".$ObjekKendaraan->$jumlahRoda."<br />"; //proses instansiasi
pemanggilan variable
echo "Status Harga : ".$ObjekKendaraan->$statusHarga();//proses
instansiasi/pemanggilan function dari kelas
echo "Status Subsidi :".$ObjekKendaraan1->statusSubsidi();
?>
Objek
Seperti yang telah dijelaskan sebelumnya bahwa sebuah class merupakan blueprint dari obyek. Sebuah
class belum menjadi obyek sebelum kita lakukan sebuah proses instantisasi obyek.
function statusHarga()
{
if ($this->harga > 50000000){
$status = “Mahal”; }
else {$status = “Murah”;}
return $status;
}
}
$objekKendaraan = new kendaraan();
?>
Objek
Jika script di atas dijalankan, maka di browser tidak muncul apa-apa. Hal ini terjadi karena kita belum menyuruh PHP untuk melakukan
sesuatu pada obyek $kendaraan1 tersebut.
Variabel $kendaraan1 kita gunakan untuk mengontrol dan menggunakan obyek kendaraan.
kita juga bisa membuat objek lebih dari satu dalam menginisiasi sebuah class, perhatikan contoh berikut ini yang menunjukkan
proses instantisasi beberapa obyek dari class kendaraan.
//Objek 1
var $jumlahRoda=4; //deklarasi objek dan instansiasi objek (berada di luar class)
var $warna; $objekKendaraan1 = new Kendaraan;
var $bahanBakar="Premium" //setting properties
var $harga=100000000; $objekKendaraan1 ->harga=1000000;
var $merek; $objekKendaraan1 ->tahunPembuatan = 1999;
var $tahunPembuatan=2004; //instansiasi objek (pemanggilan method/function)
echo "Status Harga : ".$objekKendaraan ->statusHarga();
//Objek 2
//deklarasi objek dan instansiasi objek (berada di luar class)
$objekKendaraan2 = new Kendaraan;
//setting properties
$objekKendaraan2 -> bahanBakar = "Pertamax";
$objekKendaraan2->tahunPembuatan = 1999;
//instansiasi objek (pemanggilan method/function)
echo "<br>";
echo "Status BBM: ".$objekKendaraan2 ->dapatSubsidi();
echo "<br>";
echo "Harga Bekas: ". $objekKendaraan2 ->hargaSecondKendaraan();
Function
Seperti yang di sampaikan sebelumnya, bahwa dalam sebuah class bisa dibuat function. Sebuah function
dalam suatu class dinamakan method, dan sebuah method jika kita bayangkan adalah segala hal yang
terkait dengan pekerjaan atau proses yang dapat diberikan pada suatu obyek. Sebagai contoh method
dalam kehidupan sehari-hari, adalah pada obyek suhu.
- Silahkan kalian perhatikan program perhitungan konversi suhu berikut ini :
Function
Itu sebagai contoh gambaran method dalam kehidupan sehari-hari.
Berikut ini contoh sebuah function yang dibuat dalam sebuah class. Function dalam contoh berikut ini
digunakan untuk menentukan apakah sebuah kendaraan harganya mahal atau tidak. Di sini kendaraan
dikatakan mahal jika harganya di atas 50 juta, dan jika di 50 juta ke bawah dikatakan murah.
<?php
class kendaraan
{
var $jumlahRoda = 4;
var $warna='Merah';
var $bahanBakar='Pertalite’;
var $harga='100000000';
var $merek = 'Honda’;
function statusHarga()
{
if ($this->harga > 50000000) $status = 'Mahal'; else $status = 'Murah';
return $status;
}
function statusKendaraan()
{
if ($this->jumlahRoda == 4)
$status = 'Mobil';
else if ($this->jumlahRoda == 2)
$status = 'Motor';
return $status;
}
}
?>
Properties
Perhatikan kode program dibawah ini !
Apakah kalian mendapatkan sesuatu hal yang baru ? Jika ada analisis dan jelaskan !
Sebutkan output kode program dibawah ini !
Soal Studi Kasus
Selesai