Saat objek dibuat, semua properti non-privat dari semua kelas induk menjadi milik objek yang baru dibuat ini. Dia tidak tahu properti mana yang menjadi milik kelas tempat pembuatannya, dan properti mana yang menjadi milik induknya Show
Hanya jika Anda membuat dua objek berbeda, seperti itu (saya menambahkan metode pengambil)
Ketika Anda menulis kode berikut _yaitu, Anda menginisialisasi properti di konstruktor tanpa mendeklarasikannya, php secara internal mendeklarasikannya sendiri. Dan saat Anda membuat Ketika suatu kelas berasal dari kelas lain, itu dikenal sebagai pewarisan. Berikut adalah beberapa istilah penting terkait pewarisan dalam PHP
Bagaimana cara mewarisi kelas di PHP?Kelas dapat diwariskan dengan menggunakan kata kunci extends. Lihatlah contoh berikut
Dalam contoh ini, kelas Apple memperluas kelas Buah, yang berarti bahwa kelas Apple berisi semua atribut dan metode kelas Buah selain miliknya sendiri. Konstruktor kelas Apple menggunakan induk. construct() untuk memanggil konstruktor induk, menyediakan parameter yang sesuai. Kemudian, dengan menggunakan pewarisan, Anda dapat membuat instance kelas Apple dan mengakses fungsi dari kelas induk Untuk meringkas di atas
Cakupan pengubah akses yang dilindungi di InheritanceDalam tutorial sebelumnya, kita belajar bahwa atribut/metode yang dilindungi dari suatu kelas dapat diakses di dalam kelas dan kelas diturunkan darinya Untuk memahami ruang lingkup pengubah akses yang dilindungi dalam pewarisan, mari kita lihat contoh berikut
Dalam contoh di atas
Mari kita lihat contoh lain, yang pada dasarnya adalah versi modifikasi dari yang terakhir _Karena kita mengaksesnya di dalam kelas pada contoh sebelumnya, metode yang dilindungi dari kelas Fruit tersedia di kelas apple Mengesampingkan WarisanMengesampingkan berarti mendefinisikan ulang metode kelas induk di kelas anak dengan nama yang sama. Pertimbangkan contoh penggantian warisan berikut
Dalam contoh di atas
Peran Kata Kunci Akhir dalam pewarisanKata kunci final melarang kelas anak/turunan untuk mengesampingkan fungsi kelas induk/kelas dasar. Lihat contoh berikut untuk melihat bagaimana kata kunci Final digunakan _Kelas apel mencoba mengganti metode intro pada contoh sebelumnya. Itu akan menimbulkan kesalahan karena kami menggunakan kata kunci final dengan fungsi intro kelas Buah Bisakah kelas anak mengakses variabel induk?Satu-satunya aspek yang tidak biasa adalah, dalam definisi metode kelas anak, Anda tidak dapat langsung mengakses variabel instance kelas induk . Misalnya, jika induk memiliki variabel instan tinggi, definisi metode kelas anak tidak akan dapat mengaksesnya secara langsung.
Bagaimana Anda mengakses kelas induk dari seorang anak?Gunakan kata kunci super untuk mengakses metode kelas induk
. Anda mengganti metode di kelas induk dengan memanggil metode yang sama di kelas anak. Proses ini dikenal sebagai metode overriding.
Bagaimana cara mengakses kelas induk di PHP?Untuk memanggil konstruktor kelas induk dari konstruktor kelas anak, Anda menggunakan induk. sintaks __construct(arguments) . Sintaks untuk memanggil konstruktor induk sama dengan metode biasa.
Bisakah kelas induk mengakses atribut kelas anak?Tetapi karena variabel referensi kelas induk menunjuk ke objek sub kelas. Jadi memungkinkan untuk mengakses properti kelas anak dengan objek kelas induk jika hanya down casting yang diizinkan atau dimungkinkan . |