Laporan Praktikum Web Modul 3
Laporan Praktikum Web Modul 3
MODUL 3
OOP pada PHP
Disusun Untuk Memenuhi Tugas Matakuliah Pemrograman Web 2
Disusun Oleh :
NIM : 20190810006
Nama : GUGUN RIZAL NUGRAHA
Kelas : TINFC-2019-04
A. Praktikum
1. Pembuatan Class Sepeda Motor
<?php
class SepedaMotor
{
private $merk, $tipe;
private $tangki;
private $harga;
function setMerk($m){
$this->merk = $m;
}
function getMerk(){
return $this->merk;
}
}
?>
Pembuatan Objek Sepeda Motor
<?php
include 'classSepedaMotor.php';
Analisis
Terdapat 2 file, file pertama berisi pendefinisian fungsi setter dan getter. Dimana
fungsi setter akan digunakan pada file kedua. Agar file kedua dapat menggunakan
variabel yang didefinisikan pada file pertama, digunakan lah sintaks include
untuk memanggil file. Kemudian instansiasi objek $motor dengan sintaks $motor
= new SepedaMotor(); $motor diberi fungsi setter untuk memberikan nilai. Lalu
tampilkan pada perintah echo.
class Manusia
{
function tampilkanNama()
{
return $this->nama;
}
function makan()
{
echo 'Nyam... nyam... nyam...<br>';
}
function kerja()
{
echo 'Kerja...kerjaaa...<br>';
}
}
?>
Pembuatan Objek Manusia
<?php
include 'classManusia.php';
$andi = new Manusia("Andi");
echo 'Nama saya : '. $andi->tampilkanNama();
$andi->makan();
?>
Tampilan
Analisis
Pada praktikum ini menggunakan function dalam pembuatan method nya. Pada
file keduanya instansiasi objek dengan parameter “Andi”. Lalu tampilkan pada
sintaks echo.
3. Inheritance
Pembuatan Class Pelajar
<?php
include "classManusia.php";
class Pelajar extends Manusia
{
?>
Pembuatan Objek Pelajar
<?php
include 'classPelajar.php';
$siswa = new Pelajar("Retna Ayudia", 172, 65, "20110001", "SMP N 1",
26, 8);
echo ("Nama = ".$siswa->Tampil()."<br>");
$siswa->Tampil();
?>
Tampilan
Analisis
Pada praktikum ini menggunakan teknik Inheritance, cirinya adalah class yang
dibuat akan mengacu / extends pada class parent. Pada file objek, intansiasi objek
dengan parameter nilai sesuai dengan parameter pada funcion __contruct.
Kemudian tampilkan pada sintaks echo.
include 'classManusia.php';
class Tentara extends Manusia
{
public $pangkat;
public function __construct($n, $p)
{
parent::__construct($n);
$this->pangkat = $p;
}
function tampilkanPangkat()
{
return $this->pangkat;
}
function kerja()
{
echo("Dor... Dor... Dor..<br>");
}
}
?>
Pembuatan Objek Tentara
<?php
include 'classTentara.php';
$badu = new Tentara("Badu", "Kopral");
echo ("Nama = ".$badu->tampilkanNama());
echo("<br>Pangkat = ".$badu->tampilkanPangkat());
$badu->makan();
$badu->kerja();
?>
Tampilan
Analisis
Polimorphisme artinya banyak bentuk. Pada praktikum ini dicontohkan bahwa
Manusia memili banyak bentuk, bentuk pertama adalah sebagai Tentara. Class
Tentara extends ke Class Manusia. Pada class Manusia terdapat pembuatan
function __contruct dengan 2 parameter yang akan diinstansiasi pada objek.
Pembuatan method tampilkanPangkat itu mengembalikan nilai ke pangkat yang
diinstansiasi pada objek. Pada file objek adalah instansiasi objek dari class
include 'classManusia.php';
class Programmer extends Manusia
{
public function __construct($n)
{
parent::__construct($n);
}
function kerja()
{
echo ("Tak.. Tak.. Klik<br>");
}
function bersantai()
{
echo ("Game over, you lose...<br>");
}
}
?>
Pembuatan Objek Programmer
<?php
include 'classProgrammer.php';
$andi = new Programmer("Andi");
echo ("Nama = ".$andi->tampilKanNama()."<br>");
$andi->makan();
$andi->kerja();
$andi->bersantai();
?>
Tampilan
Analisis
Bentuk keduanya adalah Programmer. Konsepnya sama seperti bentuk pertama,
pada class Programmer extends ke Class Manusia, lalu dibuat function
__construct untuk diinstansiasi pada objek. Pada file objek, adalah instansiasi
objek dari class lalu menampilkannya pada echo.
include 'classManusia.php';
class Sopir extends Manusia
{
public function __construct($n)
{
parent::__construct($n);
}
function kerja()
{
echo ("Ngung... Ngung... Ngung... Ciiit..<br>");
}
}
?>
Pembuatan Objek Sopir
<?php
include 'classSopir.php';
$dedi = new Sopir("Andi");
echo ("Nama = ".$dedi->tampilkanNama()."<br>");
$dedi->makan();
$dedi->kerja();
?>
Tampilan
Analisis
Bentuk yang ketiga adalah Sopir. Pada file class, juga terdapat function
__contruct untuk instansiasi pada objek. Pada file objek, di instansiasi lah objek
dari class yang telah dibuat lalu menampilkan pada echo sesuai dengan behaviour
nya.
Jawab
1. Class adalah Sekumpulan objek yang memiliki kesamaan keadaaan dan perilaku.
Objek adalah Abstraksi dari sesuatu dalam dunia nyata, yang memiliki attribute
dan method di dalamnya.
2. Inheritance (Pewarisan) adalah Class yang dibuat berdasarkan class yang telah
ada sebelumnya. Polimorphisme adalah Suatu objek yang dapat memiliki berbagai
bentuk yaitu sebagai objek dari classnya sendiri atau sebagai objek dari
supperclassnya.
3. Teknik Overriding artinya proses pembuatan method dengan menimpa method
yang sudah ada dari parrent class nya.
4. Parent Class (Class Mawar)
<?php
class classMawar {
public $tumbuh;
public $batang;
public $harum;
public function __construct($t, $b, $h){
$this->tumbuh = $t;
$this->batang = $b;
$this->harum = $h;
}
function tampil(){
echo "Mawar Tumbuh di " . $this->tumbuh . "<br>";
echo "Mawar Batangnya " . $this->batang . "<br>";
echo "Mawar itu " . $this->harum . "<br>";
}
}
?>
5. Source Code
Class Bangun Datar
<?php
class bangunDatar {
public function luas(){
echo "Luas Bangun Datar";
}
}
?>
Class Persegi
<?php
include 'classBangunDatar.php';
class persegi extends bangunDatar {
private $sisi;
public $luas;