Maverick Outsider – Schnittstelle in PHP

autoload
Freigeben: 2023-04-09 19:58:02
Original
2632 Leute haben es durchsucht

Klassen in php erlauben keine mehrfache Vererbung, aber interface kann mehrfache Vererbung. Zweitens kann Encapsulation spezifische Implementierung, legt keine spezifischen Implementierungsdetails nach außen offen, sondern legt nur die Schnittstelle offen, und Benutzer können nur über die Schnittstelle darauf zugreifen Es gibt auch ein gewisses Maß an Sicherheit. php中的类是不允许多继承的,而接口可以多继承,其次使用接口可以封装具体的实现,不向外部暴露具体的实现细节,只将接口暴露出来,用户也只能够通过接口访问,这样也有一定的安全性。

    1.定义:接口,使用interface关键字定义,与类类似,专门用来规范一些共性类必须实现的方法。

interface People{}
Nach dem Login kopieren

2.接口实现:接口是用来规范类必须完成的事情,所以接口只能被类实现:implements。(不允许实例化)

class Man implements People{}
Nach dem Login kopieren

3 .接口成员:接口中只能定义公有抽象方法接口常量

interface Animal{
    
    const NAME = '人';//只允许有接口常量

    public function eat();//接口方法必须为公有抽象方法
}
Nach dem Login kopieren

4.接口的实现类必须实现所有的抽象方法或者实现类为抽象类接口常量可以直接在实现类中访问

interface Animal{
    const NAME = '人';
    public function eat(); 
}

//实现接口
class Man implements Animal{
    //必须实现接口所有抽象方法
    public function eat(){
        echo self::NAME;				//可以访问接口常量
    }
}

//抽象类实现接口
abstract class Ladyboy implements Animal{}		//正常实现
Nach dem Login kopieren

5.实现接口的类成员不允许重写接口中的常量,不允许增加接口方法的控制权限

interface Animal{
    const NAME = '人';
    public function eat(); 
}
class Woman implements Animal{
    //重写接口常量
    const NAME = '女人';			  //错误:不允许重写接口常量
    
    //强化接口方法控制
    private function eat(){}		//错误:接口方法不允许使用其他访问修饰限定符,必须使用public
}
Nach dem Login kopieren

6.接口可以继承接口extends 1. Definition

: Schnittstelle, definiert mit dem Schlüsselwort interface, ähnelt einer Klasse und wird speziell zur Standardisierung der Methoden verwendet, die von einigen gängigen Klassen implementiert werden müssen.

interface Plant{
    public function lightning();
}

interface Animal{
    public function eat();
}
//单继承
interface Man extends Animal{}
//多继承
interface Apple extends Plant,Animal{}
Nach dem Login kopieren
2. Schnittstellenimplementierung: Die Schnittstelle wird verwendet, um zu standardisieren, was eine Klasse leisten muss, sodass die Schnittstelle nur von der Klasse implementiert werden kann: implements. (Instanziierung ist nicht zulässig) 🎜rrreee🎜 🎜3. Schnittstellenmitglieder🎜: In der Schnittstelle können nur öffentliche abstrakte Methoden und Schnittstellenkonstanten definiert werden Die Klasse muss alle 🎜Abstrakte Methoden implementieren, 🎜oder die Implementierungsklasse ist 🎜Abstrakte Klasse, 🎜Schnittstellenkonstanten können direkt in der Implementierungsklasse aufgerufen werden 🎜 🎜rrreee🎜 🎜 5. 🎜Klassenmitglieder, die die Schnittstelle implementieren, 🎜dürfen die Konstanten in der Schnittstelle nicht neu schreiben und die Kontrollrechte der Schnittstellenmethoden nicht erhöhen🎜🎜rrreee 🎜 🎜 6. Die Schnittstelle kann die Schnittstelle erben🎜: extends, 🎜Und die Schnittstelle kann mehrere Schnittstellen erben🎜🎜rrreee🎜Empfohlen: 🎜php-Video-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonMaverick Outsider – Schnittstelle in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage