Jadual Kandungan
1、php 接口类:interface 
2、php 抽象类 : abstract 
Rumah pembangunan bahagian belakang tutorial php php抽象类和接口的区别

php抽象类和接口的区别

Jun 20, 2016 pm 01:03 PM
antara muka php

1、php 接口类:interface 

其实他们的作用很简单,当有很多人一起开发一个项目时,可能都会去调用别人写的一些类,那你就会问,我怎么知道他的某个功能的实现方法是怎么命名的呢,这个时候php接口类就起到作用了,当我们定义了一个接口类时,它里面的方式是下面的子类必须实现的,比如 : 
代码如下:
interface Shop <br />{ <br />public function buy($gid); <br />public function sell($gid); <br />public function view($gid); <br />} 
Salin selepas log masuk


我声明一个shop接口类,定义了三个方法:买(buy),卖(sell),看(view),那么继承此类的所有子类都必须实现这3个方法少一个都不行,如果子类没有实现这些话,就无法运行。实际上接口类说白了,就是一个类的模板,一个类的规定,如果你属于这类,你就必须遵循我的规定,少一个都不行,但是具体你怎么去做,我不管,那是你的事,如:
代码如下:
class BaseShop implements Shop <br />{ <br />public function buy($gid) <br />{ <br />echo('你购买了ID为 :'.$gid.'的商品'); <br />} <br />public function sell($gid) <br />{ <br />echo('你卖了ID为 :'.$gid.'的商品'); <br />} <br />public function view($gid) <br />{ <br />echo('你查看了ID为 :'.$gid.'的商品'); <br />} <br />} 
Salin selepas log masuk


你想想,在一个多人合作的大项目里面,有了接口类是多么的方便,这样你就不用去问别人,你的某某功能的方法名是什么了,当然如果你们喜欢这样我也没有办法。
结论 : 接口类就是一个类的领导者,指明方向,子类必须完成它指定方法。

2、php 抽象类 : abstract

其实抽象类和接口类有一部分很像,记得在哪里看见这样一句话,抽象类就把类像的部分抽出来,这句看上去很搞笑,其实它说出了抽象类的真理,抽象类的作用是,当你发现你的很多类里面用很多方法你不断的在重复写,那你就可以考虑使用抽象类了,你可能会说“我不是可以重写一个类每个公共类我个实例化一个这个公共类,调用相同的方法就可以了”,这里是可以,实际上抽象类做的工作也就是这个,不过他省去了你实例化的这个步骤,让你就像直接调用本类方法一样方便,而且你还可以重载这个方法。如:
代码如下:
abstract class BaseShop <br />{ <br />public function buy($gid) <br />{ <br />echo('你购买了ID为 :'.$gid.'的商品'); <br />} <br />public function sell($gid) <br />{ <br />echo('你卖了ID为 :'.$gid.'的商品'); <br />} <br />public function view($gid) <br />{ <br />echo('你查看了ID为 :'.$gid.'的商品'); <br />} <br />} <br />class BallShop extends BaseShop <br />{ <br />var $itme_id = null; <br />public function __construct() <br />{ <br />$this->itme_id = 2314; <br />} <br />public function open() <br />{ <br />$this->sell($this->itme_id); <br />} <br />} 
Salin selepas log masuk


这里是一个例子,想上面一样我定义了一个商店类,抽出了它所有像的部分,买(buy),卖(sell),看(view),并且抽象类里都实现了这些方法,那么继承它的子类就自动获得了这些方法,子类就做它自己独特的东西,介绍代码的重复,提高复用性。 

结论:

 抽象类就是一个类的服务提供商,拥有众多服务,你不用必须用,当需要的时候你来用就可以,如果你觉得不提供服务不满意,你还可以自己来做。

区别:
1、对接口的使用是通过关键字implements。对抽象类的使用是通过关键字extends。当然接口也可以通过关键字extends继承。

2、接口中不可以声明成员变量(包括类静态变量),但是可以声明类常量。抽象类中可以声明各种类型成员变量,实现数据的封装。(另JAVA接口中的成员变量都要声明为public static final类型)

3、接口没有构造函数,抽象类可以有构造函数。

4、接口中的方法默认都是public类型的,而抽象类中的方法可以使用private,protected,public来修饰。

5、一个类可以同时实现多个接口,但一个类只能继承于一个抽象类。

抽象类还是接口。
如果要创建一个模型,这个模型将由一些紧密相关的对象采用,就可以使用抽象类。如果要创建将由一些不相关对象采用的功能,就使用接口。
如果必须从多个来源继承行为,就使用接口。
如果知道所有类都会共享一个公共的行为实现,就使用抽象类,并在其中实现该行为。


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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan antara muka php dan ECharts untuk menjana carta statistik visual Cara menggunakan antara muka php dan ECharts untuk menjana carta statistik visual Dec 18, 2023 am 11:39 AM

Dalam konteks hari ini di mana visualisasi data menjadi semakin penting, ramai pembangun berharap untuk menggunakan pelbagai alatan untuk menjana pelbagai carta dan laporan dengan cepat supaya mereka boleh memaparkan data dengan lebih baik dan membantu pembuat keputusan membuat pertimbangan yang pantas. Dalam konteks ini, menggunakan antara muka Php dan perpustakaan ECharts boleh membantu ramai pembangun menjana carta statistik visual dengan cepat. Artikel ini akan memperkenalkan secara terperinci cara menggunakan antara muka Php dan perpustakaan ECharts untuk menjana carta statistik visual. Dalam pelaksanaan khusus, kami akan menggunakan MySQL

Bagaimana untuk menggabungkan antara muka ECharts dan php untuk merealisasikan kemas kini dinamik carta statistik Bagaimana untuk menggabungkan antara muka ECharts dan php untuk merealisasikan kemas kini dinamik carta statistik Dec 17, 2023 pm 03:47 PM

Cara menggabungkan antara muka ECharts dan PHP untuk melaksanakan kemas kini dinamik carta statistik Pengenalan: Visualisasi data memainkan peranan penting dalam aplikasi moden. ECharts ialah perpustakaan carta JavaScript yang sangat baik yang boleh membantu kami mencipta pelbagai jenis carta statistik dengan mudah. PHP ialah bahasa skrip yang digunakan secara meluas dalam pembangunan sisi pelayan. Dengan menggabungkan antara muka ECharts dan PHP, kami boleh merealisasikan pengemaskinian dinamik carta statistik, supaya carta boleh dikemas kini secara automatik mengikut perubahan dalam data masa nyata. Buku

Bagaimana untuk memaparkan carta statistik masa nyata melalui antara muka ECharts dan php Bagaimana untuk memaparkan carta statistik masa nyata melalui antara muka ECharts dan php Dec 17, 2023 pm 04:35 PM

Bagaimana untuk memaparkan carta statistik masa nyata melalui antara muka ECharts dan PHP Dengan perkembangan pesat Internet dan teknologi data besar, visualisasi data telah menjadi bahagian penting. Sebagai perpustakaan visualisasi data JavaScript sumber terbuka yang sangat baik, ECharts boleh membantu kami memaparkan pelbagai carta statistik dengan mudah dan cekap. Artikel ini akan memperkenalkan cara memaparkan carta statistik masa nyata melalui antara muka ECharts dan PHP, serta menyediakan contoh kod yang berkaitan. 1. Persediaan Sebelum bermula, kita perlu melakukan beberapa persediaan

Apakah antara muka SPL (mis., Iterator, boleh dikira, arrayacess) dan mengapa menggunakannya? Apakah antara muka SPL (mis., Iterator, boleh dikira, arrayacess) dan mengapa menggunakannya? Apr 04, 2025 am 12:01 AM

Antara muka SPL termasuk iterator, dikira dan arrayaccess dalam PHP. 1. Antara muka Iterator menjadikan objek itu boleh dilalui dan mentakrifkan kaedah semasa (), kunci (), seterusnya (), mundur () dan sah (). 2. Antara muka yang boleh dikira membolehkan objek melaporkan bilangan elemen dan mentakrifkan kaedah kiraan (). 3. Antara muka ArrayaCcess membolehkan objek diakses dan diubahsuai seperti tatasusunan, dan mentakrifkan kaedah offsetexists (), offsetGet (), offsetet () dan offsetUnset (). Antara muka ini meningkatkan kecekapan kod dan penyelenggaraan.

Pemahaman mendalam tentang definisi dan penggunaan antara muka PHP Pemahaman mendalam tentang definisi dan penggunaan antara muka PHP Mar 24, 2024 am 08:45 AM

Memahami dengan mendalam definisi dan penggunaan antara muka PHP PHP ialah bahasa skrip bahagian pelayan yang kuat yang digunakan secara meluas dalam bidang pembangunan web. Dalam PHP, antara muka ialah konsep penting yang boleh digunakan untuk mentakrifkan spesifikasi set kaedah tanpa mengambil berat tentang pelaksanaan khusus kaedah tersebut. Artikel ini akan menyelidiki definisi dan penggunaan antara muka PHP dan memberikan contoh kod khusus. 1. Apakah antara muka? Dalam pengaturcaraan berorientasikan objek, antara muka ialah konsep abstrak yang mentakrifkan spesifikasi set kaedah, tetapi tidak mempunyai khusus.

Bagaimana untuk melaksanakan pengesahan data dan pengesahan carta statistik melalui antara muka ECharts dan php Bagaimana untuk melaksanakan pengesahan data dan pengesahan carta statistik melalui antara muka ECharts dan php Dec 18, 2023 pm 02:13 PM

Cara melaksanakan pengesahan data dan pengesahan carta statistik melalui antara muka ECharts dan PHP Apabila permintaan untuk visualisasi data meningkat, ECharts telah menjadi alat visualisasi data yang sangat popular. Sebagai bahasa skrip back-end yang biasa, PHP juga digunakan secara meluas dalam pembangunan web. Artikel ini akan memperkenalkan cara melaksanakan pengesahan data dan pengesahan carta statistik melalui antara muka ECharts dan PHP, serta menyediakan contoh kod khusus. Pertama, kita perlu memahami ECharts. ECharts ialah perisian sumber terbuka yang dibangunkan oleh Baidu

Bagaimana untuk menjana carta statistik interaktif melalui antara muka php dan ECharts Bagaimana untuk menjana carta statistik interaktif melalui antara muka php dan ECharts Dec 18, 2023 pm 01:07 PM

Dalam aplikasi moden, visualisasi data menjadi semakin popular. Carta statistik ialah cara terbaik untuk menggambarkan data dan boleh membantu pengguna memahami arah aliran data dengan mudah. ECharts ialah rangka kerja carta bahagian hadapan yang berkuasa yang menyediakan jenis carta yang kaya dan fungsi interaktif. Php ialah bahasa bahagian belakang yang sangat popular yang boleh menjana kandungan dan antara muka dinamik dengan mudah. Dalam artikel ini, kami akan memperkenalkan cara menggunakan antara muka PHP dan ECharts untuk menjana carta statistik interaktif, dan menyediakan contoh kod khusus. satu,

Cara menggunakan antara muka php dan ECharts untuk melaksanakan penapisan data dan penapisan carta statistik Cara menggunakan antara muka php dan ECharts untuk melaksanakan penapisan data dan penapisan carta statistik Dec 17, 2023 pm 05:36 PM

Cara menggunakan antara muka PHP dan ECharts untuk melaksanakan penapisan data dan penapisan carta statistik memerlukan contoh kod khusus Dalam visualisasi data, menggunakan carta statistik ialah cara biasa untuk memaparkan data. Dalam aplikasi praktikal, data selalunya perlu ditapis dan ditapis untuk memenuhi keperluan yang berbeza. Antara muka PHP dan ECharts ialah dua alat yang digunakan secara meluas di mana penapisan data dan penapisan carta statistik boleh dicapai. Berikut akan menggunakan contoh untuk menunjukkan cara menggunakan antara muka PHP dan pelaksanaan ECharts

See all articles