Rumah pembangunan bahagian belakang tutorial php php 抽象类的简单应用_PHP

php 抽象类的简单应用_PHP

Jun 01, 2016 pm 12:14 PM
kelas abstrak

All right, 父类postParent定义为抽象,规定子类必须重新实现 buildHTML()方法,这个方法并没有花括号,如果有不管有没有内容都会报错的。
现在越看越觉得这代码完全没必要用抽象类,用继承也都很鸡肋,好吧,也没啥好说的好像。。。。。
另外我把mysql 分开在外面了,所以调用方法很麻烦
1,先实例化 readArticle
2,mysql查询,参数来自 readArticle::getSQL();
3,返回mysql结果资源给 readArticle::fetchResult( $result );
4,readArticle::buildHTML(); 返回HTML
如果是列表循环输出的话,把 3 和 4 重复调用就可以了
复制代码 代码如下:
abstract class postParent
{
protected $querySQL;
public $fetchResult;
public $timeAgo; // eg : 2 days ago
abstract protected function buildHTML();
public function getSQL()
{
return $this->querySQL;
}
public function fetchResult( $result )
{
$this->fetchResult = mysql_fetch_assoc( $result );
}
public function error()
{}
}
class readArticle extends postParent
{
public function __construct( $id )
{
$this->querySQL =SELECT title, author, text, unixtime FROM post
WHERE id = $id ORDER BY unixtime DESC;
eof;
}
public function buildHTML()
{
return




class="post-title-a" > {$this->fetchResult['title']}





{$this->fetchResult['text']}


eof;
}
}
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)

Adakah golang mempunyai kelas abstrak? Adakah golang mempunyai kelas abstrak? Jan 06, 2023 pm 07:04 PM

Golang tidak mempunyai kelas abstrak. Golang bukan bahasa berorientasikan objek (OOP) Ia tidak mempunyai konsep kelas, warisan, dan kelas abstrak Walau bagaimanapun, terdapat struktur (struktur) dan antara muka (antara muka) yang boleh dilaksanakan secara tidak langsung melalui gabungan. struct dan antara muka kelas abstrak dalam bahasa objek.

Aplikasi antara muka dan kelas abstrak dalam corak reka bentuk di Jawa Aplikasi antara muka dan kelas abstrak dalam corak reka bentuk di Jawa May 01, 2024 pm 06:33 PM

Antara muka dan kelas abstrak digunakan dalam corak reka bentuk untuk penyahgandingan dan kebolehlanjutan. Antara muka mentakrifkan tandatangan kaedah, kelas abstrak menyediakan pelaksanaan separa, dan subkelas mesti melaksanakan kaedah yang tidak dilaksanakan. Dalam corak strategi, antara muka digunakan untuk menentukan algoritma, dan kelas abstrak atau kelas konkrit menyediakan pelaksanaan, membenarkan penukaran dinamik algoritma. Dalam corak pemerhati, antara muka digunakan untuk menentukan tingkah laku pemerhati, dan kelas abstrak atau konkrit digunakan untuk melanggan dan menerbitkan pemberitahuan. Dalam corak penyesuai, antara muka digunakan untuk menyesuaikan kelas yang sedia ada atau kelas konkrit boleh melaksanakan antara muka yang serasi, membenarkan interaksi dengan kod asal.

Pelaksanaan kelas dalaman antara muka dan kelas abstrak dalam Java Pelaksanaan kelas dalaman antara muka dan kelas abstrak dalam Java Apr 30, 2024 pm 02:03 PM

Java membenarkan kelas dalaman ditakrifkan dalam antara muka dan kelas abstrak, memberikan fleksibiliti untuk penggunaan semula kod dan modularisasi. Kelas dalaman dalam antara muka boleh melaksanakan fungsi tertentu, manakala kelas dalaman dalam kelas abstrak boleh mentakrifkan fungsi umum, dan subkelas menyediakan pelaksanaan konkrit.

Perbincangan mendalam tentang persamaan dan perbezaan antara antara muka berfungsi Golang dan kelas abstrak Perbincangan mendalam tentang persamaan dan perbezaan antara antara muka berfungsi Golang dan kelas abstrak Apr 20, 2024 am 09:21 AM

Kedua-dua antara muka berfungsi dan kelas abstrak digunakan untuk kebolehgunaan semula kod, tetapi ia dilaksanakan dengan cara yang berbeza: antara muka berfungsi melalui fungsi rujukan, kelas abstrak melalui warisan. Antara muka berfungsi tidak boleh dibuat instantiated, tetapi kelas abstrak boleh. Antara muka berfungsi mesti melaksanakan semua kaedah yang diisytiharkan, manakala kelas abstrak hanya boleh melaksanakan beberapa kaedah.

Antara Muka Java dan Kelas Abstrak: Jalan Menuju Syurga Pengaturcaraan Antara Muka Java dan Kelas Abstrak: Jalan Menuju Syurga Pengaturcaraan Mar 04, 2024 am 09:13 AM

Antara Muka: Antara muka kontrak tanpa pelaksanaan mentakrifkan satu set tandatangan kaedah dalam Java tetapi tidak menyediakan sebarang pelaksanaan konkrit. Ia bertindak sebagai kontrak yang memaksa kelas yang melaksanakan antara muka untuk melaksanakan kaedah yang ditentukan. Kaedah dalam antara muka adalah kaedah abstrak dan tidak mempunyai badan kaedah. Contoh kod: publicinterfaceAnimal{voideat();voidsleep();} Kelas Abstrak: Pelan Tindakan Separa Kelas abstrak ialah kelas induk yang menyediakan pelaksanaan separa yang boleh diwarisi oleh subkelasnya. Tidak seperti antara muka, kelas abstrak boleh mengandungi pelaksanaan konkrit dan kaedah abstrak. Kaedah abstrak diisytiharkan dengan kata kunci abstrak dan mesti ditindih oleh subkelas. Contoh kod: publicabstractcla

Antara muka Java dan kelas abstrak: mendedahkan sambungan dalaman antara mereka Antara muka Java dan kelas abstrak: mendedahkan sambungan dalaman antara mereka Mar 04, 2024 am 09:34 AM

Antara Muka Antaramuka mentakrifkan kaedah abstrak dan pemalar dalam Java. Kaedah dalam antara muka tidak dilaksanakan, tetapi disediakan oleh kelas yang melaksanakan antara muka. Antara muka mentakrifkan kontrak yang memerlukan kelas pelaksanaan untuk menyediakan pelaksanaan kaedah tertentu. Isytiharkan antara muka: publicinterfaceExampleInterface{voiddoSomething();intgetSomething();} Kelas abstrak Kelas abstrak ialah kelas yang tidak boleh dibuat instantiated. Ia mengandungi campuran kaedah abstrak dan bukan abstrak. Sama seperti antara muka, kaedah abstrak dalam kelas abstrak dilaksanakan oleh subkelas. Walau bagaimanapun, kelas abstrak juga boleh mengandungi kaedah konkrit, yang menyediakan pelaksanaan lalai. Isytiharkan kelas abstrak: publicabstractcl

Apakah perbezaan antara antara muka dan kelas abstrak dalam PHP? Apakah perbezaan antara antara muka dan kelas abstrak dalam PHP? Jun 04, 2024 am 09:17 AM

Antara muka dan kelas abstrak digunakan untuk mencipta kod PHP yang boleh diperluaskan, dan terdapat perbezaan utama berikut di antara mereka: Antara muka menguatkuasakan melalui pelaksanaan, manakala kelas abstrak menguatkuasakan melalui warisan. Antara muka tidak boleh mengandungi kaedah konkrit, manakala kelas abstrak boleh. Kelas boleh melaksanakan berbilang antara muka, tetapi hanya boleh mewarisi daripada satu kelas abstrak. Antara muka tidak boleh digunakan, tetapi kelas abstrak boleh.

PHP的抽象类和接口有什么区别 PHP的抽象类和接口有什么区别 Mar 10, 2021 pm 05:51 PM

区别:1、抽象类可有属性、普通方法,但接口不能有;2、抽象类内未必有抽象方法,但接口内一定会有“抽象”方法;3、语法上有不同;4、抽象类用abstract关键字在类前声明,且有class声明为类,接口是用interface来声明,但不能用class来声明;5、抽象类的抽象方法一定要用abstract来声明,而接口则不需要;6、抽象类和接口实现详细方法的方式不同。

See all articles