class vs object
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan PHP di Coddy. Pelajaran 3 dari 91.
class dan object memiliki tujuan yang berbeda. class adalah cetak biru, sedangkan object adalah sesuatu yang kamu buat berdasarkan cetak biru tersebut.
Berikut contoh class dengan property yang dideklarasikan:
<?php
class Dog {
public $name;
public $breed;
}Kata kunci public berarti property ini dapat diakses dari luar class. Kita akan mempelajari lebih lanjut tentang public dalam pelajaran Properties.
Sekarang buat object dari class Dog:
$dog1 = new Dog();
$dog2 = new Dog();Object dapat memiliki nilai masing-masing untuk property-nya:
$dog1->name = "Nicky";
$dog1->breed = "Siberian Husky";
$dog2->name = "Teemon";
$dog2->breed = "Shu'ali";Operator -> digunakan untuk mengakses property sebuah object.
Cetak data setiap object:
echo $dog1->name . " is a " . $dog1->breed . "\n";
echo $dog2->name . " is a " . $dog2->breed . "\n";output:
Nicky is a Siberian Husky
Teemon is a Shu'aliPerbedaan utama: class Dog mendefinisikan struktur yang dimiliki semua anjing, sementara object $dog1 dan $dog2 merepresentasikan anjing tertentu secara individual dengan nilai property yang unik.
Tantangan
MudahLengkapi kode untuk membuat dua object student dari class Student dan mengatur property-nya.
student.php: Berisi classStudent(terkunci)driver.php: Buat object dan atur property-nya
Tetapkan nilai berikut:
$student1: name adalah"Alice"dengan grade"A"$student2: name adalah"Bob"dengan grade"B"
Coba sendiri
<?php
require_once 'student.php';
// TODO: Buat dua object student
// TODO: Atur property untuk student1 (name: "Alice", grade: "A")
// TODO: Atur property untuk student2 (name: "Bob", grade: "B")
// Tampilkan informasi student
echo $student1->name . " has grade " . $student1->grade . "\n";
echo $student2->name . " has grade " . $student2->grade . "\n";
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengenalan OOPclass vs objectKata Kunci $thismethodpropertyConstructor (__construct)Destructor (__destruct)Ringkasan: Kalkulator Sederhana4Pewarisan
Pewarisan DasarKata Kunci parent::Penimpaan methodKata Kunci finalClass AbstrakRingkasan: Hierarki Karyawan7Enkapsulasi
Public, Protected, PrivateModifier Akses secara MendalamGetter dan SetterPenyembunyian InformasiPromosi Constructor (8.0)Ulasan: Sistem Catatan Siswa2Namespace dan Autoloading
Pengenalan NamespaceKata Kunci useStandar Autoloading PSR-4Autoloader ComposerRingkasan: Proyek yang Terorganisasi5Interface dan Kontrak
Pengenalan InterfaceMengimplementasikan InterfaceImplementasi Beberapa InterfaceInterface vs Abstract ClassPetunjuk Tipe dengan InterfaceRekap: Kalkulator Bentuk8Magic Methods
Pengantar Magic Methods__toString & __debugInfo__get, __set, __isset, __unset__call & __callStatic__clone & Cloning Object__serialize & __unserializeRingkasan: Koleksi Kustom11Sistem Tipe Data dan Penanganan Error
Deklarasi TipeTipe NullableTipe Union dan IntersectionClass ExceptionHierarki Exception KustomTry, Catch, FinallyRekap: Validator Form3Property dalam class
Property instance vs staticKonstanta dalam classMethod & property staticProperty private & protectedProperty readonly (PHP 8.1)Ulasan: Pengelola Rekening Bank6Polimorfisme
Meninjau Kembali Method OverridingPolimorfisme melalui AntarmukaPetunjuk Tipe dan Tipe UnionPengikatan Statis TertundaRangkuman: Pemroses PembayaranLatihan sendiri: Compiler PHP online