Bagaimana untuk Memanggil Fungsi Kelas Kanak-kanak daripada Kelas Induk dalam PHP Menggunakan Kelas Abstrak?

Patricia Arquette
Lepaskan: 2024-10-19 08:25:02
asal
950 orang telah melayarinya

How to Call Child Class Functions from Parent Class in PHP Using Abstract Classes?

Memanggil Fungsi Kelas Kanak-kanak daripada Kelas Induk

Dalam PHP, adalah mungkin untuk memanggil fungsi daripada kelas anak dalam kelas induk, tetapi ia memerlukan perancangan yang teliti.

Pertimbangkan contoh kod berikut:

<code class="php">class whale { ... }
class fish extends whale { ... }</code>
Salin selepas log masuk

Dalam contoh ini, kami mempunyai kelas ikan paus dan kelas ikan yang mewarisi daripadanya. Matlamatnya ialah untuk memanggil fungsi test() daripada kelas ikan dalam fungsi myfunc() kelas ikan paus.

Penyelesaian: Gunakan Kelas Abstrak

Untuk mencapai ini, kita boleh memanfaatkan kelas abstrak. Kelas abstrak menguatkuasakan pelaksanaan kaedah tertentu dalam kelas anaknya.

<code class="php">abstract class whale {
  function __construct() { ... }
  function myfunc() { $this->test(); }
  abstract function test();
}</code>
Salin selepas log masuk

Dalam kelas paus yang dikemas kini, kami kini mengisytiharkan myfunc() dan test() sebagai kaedah abstrak. myfunc() akan memanggil test(), yang perlu dilaksanakan dalam kelas kanak-kanak.

<code class="php">class fish extends whale {
  function __construct() { parent::__construct(); }
  function test() { echo "So you managed to call me !!"; }
}</code>
Salin selepas log masuk

Dalam kelas ikan, kami menyediakan pelaksanaan untuk test(). Ini memastikan bahawa keperluan abstrak kelas induk dipenuhi.

Dengan persediaan ini, kita kini boleh memanggil fungsi test() daripada ikan dalam myfunc() kelas paus.

<code class="php">$fish = new fish();
$fish->test(); // Output: So you managed to call me !!
$fish->myfunc(); // Output: So you managed to call me !!</code>
Salin selepas log masuk

Dengan menggunakan kelas abstrak, kami menguatkuasakan pewarisan yang betul dan memastikan kelas kanak-kanak melaksanakan kaedah yang diperlukan. Ini membolehkan kami memanggil fungsi kelas anak daripada kelas induk dengan lancar.

Atas ialah kandungan terperinci Bagaimana untuk Memanggil Fungsi Kelas Kanak-kanak daripada Kelas Induk dalam PHP Menggunakan Kelas Abstrak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan