Rumah >pembangunan bahagian belakang >masalah PHP >Apakah perbezaan antara mewarisi kelas dan melaksanakan antara muka dalam php

Apakah perbezaan antara mewarisi kelas dan melaksanakan antara muka dalam php

WBOY
WBOYasal
2022-02-17 11:43:181708semak imbas

Perbezaan antara kelas mewarisi dan antara muka pelaksanaan dalam PHP: 1. Warisan PHP tergolong dalam warisan tunggal, yang memastikan perpaduan, tetapi tidak cukup fleksibel, manakala antara muka melaksanakan adalah tambahan kepada warisan tunggal; boleh dilakukan tanpa Kembangkan fungsi kelas tertentu tanpa memusnahkan hubungan hierarki.

Apakah perbezaan antara mewarisi kelas dan melaksanakan antara muka dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 10, PHP versi 7.1, komputer DELL G3

Perbezaan antara kelas yang diwarisi dan antara muka yang dilaksanakan dalam PHP

1. Perbandingan antara warisan dan pelaksanaan antara muka:

(1) Warisan PHP ialah warisan tunggal, yang memastikan perpaduan, tetapi tidak cukup fleksibel. Melaksanakan antara muka ialah tambahan kepada warisan tunggal; (2) Melaksanakan antara muka boleh memanjangkan kefungsian kelas tertentu tanpa memusnahkan perhubungan hierarki kelas.

2. Kata kunci akhir:
<?php
  class Monkey {
      public $age;
      public $name;
      public function climbing() {
          echo "猴子会爬树<br/>";
      }
  }
  interface iBirdable {
      public function fly();
  }
  interface iFishable {
      public function swimming();
  }
  class LittleMonkey extends Monkey implements iBirdable,iFishable {
      public function fly() {
          echo "猴子还会飞<br/>";
      }
      public function swimming() {
          echo "猴子也会游泳<br/>";
      }
  }
  $littleMonkey = new LittleMonkey();
  $littleMonkey -> climbing();
  $littleMonkey -> fly();
  $littleMonkey -> swimming();
?>

1. Jika kelas tidak mahu diwarisi oleh kelas lain (dari sudut keselamatan), ia boleh diubah suai dengan

2 Jika anda mahu kaedah tidak ditindih oleh subkelas (anda tidak mahu kaedah tersebut dibebani oleh kaedah subkelas), anda juga boleh menggunakan pengubahsuaian akhir.

3. Final tidak boleh mengubah suai pembolehubah ahli (sifat).
<?php  
class A{  
    final public function getRate($salary){  
        return $salary*0.08;  
    }  
}  
class B extends A{  
    //不能去覆盖父类的getRate方法.  
    /*public function getRate($sal){ 
        return $sal*0.01; 
    }*/  
}  
        
$b=new B();  
echo $b->getRate(100)."<br/>";  
?>

3. const:

1 Apabila atribut tidak mahu diubah suai, anda boleh mempertimbangkan untuk menggunakan const sebagai contoh, pi tidak boleh diubah.

2. Sintaks asas:

nama pemalar const = tetapkan nilai awal; tidak mempunyai nilai.

3. Pengubah suai tidak boleh ditulis pada pemalar lalai kepada umum tetapi tidak boleh dihapuskan.

4. Nama tetap biasanya dinamakan dengan semua huruf besar.

5. Sintaks panggilan:

digunakan di dalam kelas:

self::constant name or class name::constant name;

in External penggunaan kelas:

Nama antara muka::constant;

Pembelajaran yang disyorkan: "

Tutorial Video PHP

"

Atas ialah kandungan terperinci Apakah perbezaan antara mewarisi kelas dan melaksanakan antara muka 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