Ringkasan. dalam tutorial ini, Anda akan belajar tentang objek PHP, cara mendefinisikan kelas, dan cara membuat objek dari kelas
Apa itu Objek
Jika Anda melihat dunia di sekitar Anda, Anda akan menemukan banyak contoh benda berwujud. lampu, telepon, komputer, dan mobil. Juga, Anda dapat menemukan objek tidak berwujud seperti rekening bank dan transaksi
Semua objek ini memiliki dua karakteristik utama yang sama
- Negara
- Perilaku
Misalnya, rekening bank memiliki status yang terdiri dari
- Nomor akun
- Keseimbangan
Rekening bank juga memiliki perilaku berikut
- Menyetorkan
- Menarik
Objek PHP secara konseptual mirip dengan objek dunia nyata karena terdiri dari keadaan dan perilaku
Sebuah objek memegang statusnya dalam variabel yang sering disebut sebagai properti. Sebuah objek juga memaparkan perilakunya melalui fungsi yang dikenal sebagai metode
Apa itu kelas?
Di dunia nyata, Anda dapat menemukan banyak objek yang sama. Misalnya, sebuah bank memiliki banyak rekening bank. Semuanya memiliki nomor rekening dan saldo
Rekening bank ini dibuat dari cetak biru yang sama. Dalam istilah berorientasi objek, kami mengatakan bahwa rekening bank individual adalah turunan dari kelas Rekening Bank
Menurut definisi, kelas adalah cetak biru objek. Misalnya, dari kelas Rekening Bank, Anda dapat membuat banyak objek rekening bank
Berikut ini mengilustrasikan hubungan antara kelas
<?php class BankAccount { }
Code language: HTML, XML (xml)2 dan objeknya. Dari kelas<?php class BankAccount { }
Code language: HTML, XML (xml)2 Anda dapat membuat banyak objek<?php class BankAccount { }
Code language: HTML, XML (xml)2. Dan setiap benda memiliki nomor rekening dan saldo masing-masingTentukan kelas
Untuk mendefinisikan kelas, Anda menentukan kata kunci
<?php class BankAccount { }
Code language: HTML, XML (xml)5 diikuti dengan nama seperti ini<?php class ClassName { //... }
Code language: HTML, XML (xml)_Misalnya, berikut ini mendefinisikan kelas baru bernama
<?php class BankAccount { }
Code language: HTML, XML (xml)2<?php class BankAccount { }
Code language: HTML, XML (xml)Dengan konvensi, Anda harus mengikuti aturan ini saat mendefinisikan kelas
- Nama kelas harus dalam huruf unta atas di mana setiap kata dikapitalisasi. Misalnya,
<?php class BankAccount { }
Code language: HTML, XML (xml)2,<?php class BankAccount { }
Code language: HTML, XML (xml)8,<?php class BankAccount { }
<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)0 - Jika nama kelas adalah kata benda, itu harus dalam kata benda tunggal
- Tentukan setiap kelas dalam file PHP terpisah
Dari kelas
<?php class BankAccount { }
Code language: HTML, XML (xml)_2, Anda dapat membuat objek rekening bank baru dengan menggunakan kata kunci<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)2 seperti ini<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)Dalam sintaks ini,
<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)_3 adalah variabel yang mereferensikan objek yang dibuat oleh kelas<?php class BankAccount { }
Code language: HTML, XML (xml)2. Tanda kurung yang mengikuti nama kelas<?php class BankAccount { }
Code language: HTML, XML (xml)_2 adalah opsional. Oleh karena itu, Anda dapat membuat objek<?php class BankAccount { }
Code language: HTML, XML (xml)2 baru seperti ini$account = new BankAccount;
Code language: PHP (php)Proses pembuatan objek baru disebut juga dengan instantiation. Dengan kata lain, Anda membuat instance objek dari kelas. Atau Anda membuat objek baru dari kelas
Kelas
<?php class BankAccount { }
Code language: HTML, XML (xml)2 kosong karena tidak memiliki status dan perilaku apa punMenambahkan properti ke kelas
Untuk menambahkan properti ke kelas
<?php class BankAccount { }
Code language: HTML, XML (xml)_2, Anda menempatkan variabel di dalamnya. Sebagai contoh<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)Kelas
<?php class BankAccount { }
Code language: HTML, XML (xml)2 memiliki dua properti$account = new BankAccount;
Code language: PHP (php)0 dan$account = new BankAccount;
Code language: PHP (php)1. Di depan setiap properti, Anda melihat kata kunci$account = new BankAccount;
Code language: PHP (php)2Kata kunci
$account = new BankAccount;
Code language: PHP (php)_2 menentukan visibilitas properti. Dalam hal ini, Anda dapat mengakses properti dari luar kelasUntuk mengakses properti, Anda menggunakan operator objek (
$account = new BankAccount;
<?php $object->property;
Code language: HTML, XML (xml)Contoh berikut menunjukkan cara menyetel nilai properti
$account = new BankAccount;
Code language: PHP (php)5 dan$account = new BankAccount;
Code language: PHP (php)6<?php class BankAccount { public $accountNumber; public $balance; } $account = new BankAccount(); $account->accountNumber = 1; $account->balance = 100;
Code language: HTML, XML (xml)Selain kata kunci
$account = new BankAccount;
Code language: PHP (php)_2, PHP juga memiliki kata kunci$account = new BankAccount;
Code language: PHP (php)8 dan$account = new BankAccount;
Code language: PHP (php)9 yang akan Anda pelajari di tutorial pengubah aksesMenambahkan metode ke kelas
Berikut ini menunjukkan sintaks untuk mendefinisikan metode di kelas
<?php class ClassName { public function methodName(parameter_list) { // implementation } }
Code language: HTML, XML (xml)Seperti properti, metode juga memiliki salah satu dari tiga pengubah visibilitas.
$account = new BankAccount;
Code language: PHP (php)2,$account = new BankAccount;
Code language: PHP (php)8, dan<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)2. Jika Anda menentukan metode tanpa pengubah visibilitas apa pun, defaultnya adalah$account = new BankAccount;
Code language: PHP (php)2Contoh berikut mendefinisikan metode
<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)_4 untuk kelas<?php class BankAccount { }
Code language: HTML, XML (xml)2<?php class BankAccount { public $accountNumber; public $balance; public function deposit($amount) { if ($amount > 0) { $this->balance += $amount; } } }
Code language: HTML, XML (xml)Metode
<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)_4 menerima argumen<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)7. Ini memeriksa apakah<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)7 lebih besar dari nol sebelum menambahkannya ke saldoUntuk memanggil metode, Anda juga menggunakan operator objek (
$account = new BankAccount;
Code language: PHP (php)4) sebagai berikut$object->method(arguments)
Code language: PHP (php)Sintaks baru dalam metode
<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)_4 adalah variabel<?php $object->property;
Code language: HTML, XML (xml)1. Variabel<?php $object->property;
Code language: HTML, XML (xml)_2 adalah objek saat ini dari kelas<?php class BankAccount { }
Code language: HTML, XML (xml)2Misalnya, saat Anda membuat objek baru
<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)_3 dan memanggil metode<?php class BankAccount { public $accountNumber; public $balance; }
Code language: HTML, XML (xml)4,<?php $object->property;
Code language: HTML, XML (xml)2 di dalam metode adalah objek<?php class BankAccount { } $account = new BankAccount();
Code language: HTML, XML (xml)3<?php class BankAccount { }
Code language: HTML, XML (xml)0Demikian pula, Anda dapat menambahkan metode
<?php $object->property;
Code language: HTML, XML (xml)_8 ke kelas<?php class BankAccount { }
Code language: HTML, XML (xml)2 sebagai berikut<?php class BankAccount { }
Code language: HTML, XML (xml)_1Metode
<?php $object->property;
Code language: HTML, XML (xml)_8 memeriksa saldo saat iniJika saldo kurang dari jumlah penarikan, metode
<?php $object->property;
Code language: HTML, XML (xml)8 mengembalikan<?php class BankAccount { public $accountNumber; public $balance; } $account = new BankAccount(); $account->accountNumber = 1; $account->balance = 100;
Code language: HTML, XML (xml)2Nanti, Anda akan belajar cara melontarkan pengecualian. Jika tidak, itu mengurangi jumlah penarikan dari saldo dan mengembalikan
<?php class BankAccount { public $accountNumber; public $balance; } $account = new BankAccount(); $account->accountNumber = 1; $account->balance = 100;
Code language: HTML, XML (xml)3