Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara Mengakses Pembolehubah Kelas Induk dalam Kelas Kanak-kanak dalam PHP

Cara Mengakses Pembolehubah Kelas Induk dalam Kelas Kanak-kanak dalam PHP

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-22 21:31:30271semak imbas

How to Access Parent Class Variables in Child Classes in PHP

Mengakses Pembolehubah Kelas Induk dalam PHP

Apabila bekerja dengan warisan, ia menjadi perlu untuk mengakses pembolehubah daripada kelas induk. Dalam contoh yang disediakan, kelas B memanjangkan kelas A dan cuba menggemakan pembolehubah $bb, yang ditakrifkan sebagai dilindungi dalam kelas induk. Walau bagaimanapun, ralat dilemparkan, menunjukkan bahawa $bb ialah pemalar kelas yang tidak ditentukan.

Untuk memaparkan pembolehubah induk dalam kelas anak, gunakan sintaks berikut:

<code class="php">echo $this->bb;</code>

Tidak seperti pembolehubah persendirian , yang tidak boleh diakses di luar kelas, pembolehubah yang dilindungi boleh diakses dalam kelas kanak-kanak. Oleh itu, $bb boleh diakses terus melalui kata kunci $ini dalam kelas kanak-kanak. Hasil jangkaan 'parent bb' akan dicetak seperti yang dijangkakan.

Maklumat Tambahan: Penggunaan induk::

Induk:: sintaks digunakan apabila anda mahu untuk melanjutkan kefungsian kaedah daripada kelas induk. Tidak seperti contoh yang diberikan dalam soalan, di mana kelas anak hanya mengakses pembolehubah induk, ibu bapa:: membenarkan anda mengubah suai atau mempertingkatkan kelakuan kaedah yang diwarisi.

Sebagai contoh, jika kelas induk Airplane mempunyai pembolehubah persendirian $pilot dan pembina yang memberikan juruterbang kepada pembolehubah $pilot:

<code class="php">class Airplane {
    private $pilot;

    public function __construct($pilot) {
        $this->pilot = $pilot;
    }
}</code>

Dan anda ingin mencipta kelas Bomber yang memanjangkan Pesawat dan menambah pembolehubah navigasi dan pembina lanjutan:

<code class="php">class Bomber extends Airplane {
    private $navigator;

    public function __construct($pilot, $navigator) {
        $this->navigator = $navigator;

        parent::__construct($pilot); // Assigns $pilot to $this->pilot
    }
}</code>

Dengan menggunakan parent::__construct($pilot), anda boleh memanggil pembina kelas induk daripada kelas anak, memberikan hujah perintis kepada pembolehubah $pilot dalam kelas anak sambil masih menambah fungsi navigator. Ini membolehkan anda menggunakan semula kod sedia ada daripada kelas induk dan menyesuaikannya dalam kelas anak, mematuhi prinsip DRY (Jangan Ulangi Diri Sendiri).

Atas ialah kandungan terperinci Cara Mengakses Pembolehubah Kelas Induk dalam Kelas Kanak-kanak dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn