Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die Schnittstellenvererbung und die Prinzipien der Schnittstellenmehrfachvererbung in PHP

So implementieren Sie die Schnittstellenvererbung und die Prinzipien der Schnittstellenmehrfachvererbung in PHP

黄舟
黄舟Original
2017-10-19 09:21:002109Durchsuche

In diesem Artikel werden hauptsächlich die Prinzipien und Implementierungsmethoden der PHP-Schnittstellenvererbung und der Schnittstellenmehrfachvererbung vorgestellt. Er beschreibt kurz die Konzepte und Prinzipien der Schnittstellenvererbung und der Mehrfachschnittstellenvererbung und gibt die spezifische Implementierung und Verwendung der PHP-Schnittstellenvererbung an In Form von Beispielen können Freunde in Not auf

verweisen. In diesem Artikel werden die Prinzipien und Implementierungsmethoden der PHP-Schnittstellenvererbung und der Schnittstellenmehrfachvererbung anhand von Beispielen erläutert. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

In PHP-Schnittstellen können Schnittstellen Schnittstellen erben. Obwohl PHP-Klassen nur von einer übergeordneten Klasse erben können (Einzelvererbung), unterscheiden sich Schnittstellen von Klassen. Schnittstellen können Mehrfachvererbung implementieren und eine oder mehrere Schnittstellen erben. Natürlich wird bei der Vererbung von Schnittstellen auch das Schlüsselwort „extends“ verwendet. Wenn Sie mehrere Vererbungen wünschen, trennen Sie die geerbten Schnittstellen einfach durch Kommas.

Es ist zu beachten, dass Ihre Schnittstelle, wenn sie andere Schnittstellen erbt, direkt die statischen Konstantenattribute und abstrakten Methoden der übergeordneten Schnittstelle erbt, sodass die Klasse bei der Implementierung der Schnittstelle alle relevanten abstrakten Methoden implementieren muss.

Jetzt haben Sie ein gewisses Verständnis für die Vererbung von PHP-Schnittstellen. Das folgende Beispiel dient als Referenz:


<?php
interface father{
  function shuchu();
}
interface fam extends father{
  function cook($name);
}
class test implements fam{
  function shuchu(){
    echo "接口继承,要实现两个抽象方法";
    echo "<br>";
  }
  function cook($name){
    echo "平时经常做饭的人是:".$name;
  }
}
$t=new test();
$t->shuchu();
$t->cook("妈妈");
?>

Code Laufergebnisse Wie folgt:


接口继承,要实现两个抽象方法
平时经常做饭的人是:妈妈

Das obige Beispiel zeigt, dass die Schnittstelle eine Schnittstelle erbt. Wenn die Testklasse also die Fam-Schnittstelle implementiert, müssen zwei abstrakte Methoden instanziiert werden Das heißt, die Schnittstelle Die abstrakten Methoden sowohl der Unterklassen als auch der übergeordneten Klassen werden instanziiert.

Sehen wir uns ein Beispiel für die Mehrfachvererbung einer Schnittstelle an. Der Code lautet wie folgt:


<?php
interface father{
  function shuchu();
}
interface mother{
  function dayin($my);
}
interface fam extends father,mother{
  function cook($name);
}
class test implements fam{
  function dayin($my){
    echo "我的名字是:".$my;
    echo "<br>";
  }
  function shuchu(){
    echo "接口继承,要实现两个抽象方法";
    echo "<br>";
  }
  function cook($name){
    echo "平时经常做饭的人是:".$name;
  }
}
$t=new test();
$t->shuchu();
$t->dayin("小强");
$t->cook("妈妈");
?>

Beispiel für laufende Ergebnisse:


接口继承,要实现两个抽象方法
我的名字是:小强
平时经常做饭的人是:妈妈

Da die Schnittstelle zwei Schnittstellen erbt, muss dieser Code beim Instanziieren alle abstrakten Methoden dieser drei abstrakten Klassen instanziieren. Nachdem Sie diese beiden Beispiele gelesen haben, sollten Sie mit der Schnittstellenvererbung vertraut sein. Tatsächlich gibt es Einzelvererbung und Mehrfachvererbung, sofern alle relevanten abstrakten Methoden implementiert sind.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Schnittstellenvererbung und die Prinzipien der Schnittstellenmehrfachvererbung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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