Abstrakte Klasse:
1) Eine Klasse, die mindestens eine abstrakte Methode (abstrakte Funktion) enthält. Mit anderen Worten: Jede Klasse, die nur über eine oder mehrere abstrakte Methoden verfügt, ist eine abstrakte Klasse.
2) In abstrakten Klassen kann bestimmte Methoden haben und kann Mitgliedsvariablen haben.
3) Die abstrakte Klasse kann nicht instanziieren. Sie werden alle als abstrakt bezeichnet. Wie können sie also instanziiert werden? 2333.
4) Verwendung:
ZusammenfassungKlasse Vater{
geschützt (oder öffentliche Änderung kann nicht privat sein, sonst können Unterklassen sie nicht erhalten) abstrakte Funktion func1();
}
Bei der Implementierung geerbter abstrakter Methoden
class Son erweitert Father{//Wie gewöhnliche Klassen kann eine Unterklasse nur eine abstrakte Klasse erben
Öffentliche Funktion (abstraktes Schlüsselwort entfernen) func1{
echo 'muss alle abstrakten Methoden implementieren';
}
}
Schnittstelle:
1) In der Schnittstelle sind alle abstrakte Methoden . (Weil es zum Implementieren von Unterklassen verwendet wird. Es muss also öffentlich sein.)
2) In der Schnittstelle kann keine spezifischen Methoden haben und kann nur Mitgliedskonstanten haben.
3) Eine Klasse kann mehrere Schnittstellen implementieren.
3) Verwendung: implementieren Sie mehrere Schnittstellen nach dem Schlüsselwort „implements“ , getrennt durch Kommas.
Klasse Son implementiert InterfaceA,InterfaceB,InterfaceC {
//1. Implementieren Sie alle abstrakten Methoden dieser drei Schnittstellen. 2. Muss vollständig mit den Parametern der abstrakten Methode übereinstimmen. 3. Die Konstanten der Schnittstelle kann nicht überschrieben werden .
}