PHP-Klassenmodifikatoren und Zugriffsmodifikatoren

不言
Freigeben: 2023-04-02 17:54:02
Original
2465 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich die Klassenmodifikatoren und Zugriffsmodifikatoren von PHP vorgestellt, die einen bestimmten Referenzwert haben. Jetzt können Freunde in Not darauf verweisen.

    1. Die durch Zusammenfassung geänderte Klasse ist eine abstrakte Klasse. Wenn eine Klasse abstrakte Methoden enthält, ist diese Klasse eine abstrakte Klasse (natürlich gibt es in einer Klasse keine abstrakte Methode, wir können diese Klasse auch definieren). als abstrakte Klasse), was ist also eine abstrakte Methode? Eine abstrakte Methode ist eine Methode ohne geschweiften Klammern und ohne den darin enthaltenen Inhalt. Die abstrakte Klasse selbst kann nicht instanziiert werden, nur eine Klasse erbt sie und überschreibt alle ihre abstrakten Methoden, sodass wir ihre Unterklassen instanziieren können
  • abstract class My{
        abstract function say();
    }
    //
    abstract class My{
         function say(){
            echo 'hello';
        }
    }
    Nach dem Login kopieren

    2 Die von der Schnittstelle modifizierte Klasse ist eine Schnittstelle. Sie ähnelt in gewisser Weise den abstrakten Klassen, der Unterschied besteht jedoch darin, dass alle Methoden der Schnittstelle abstrakte Methoden sind und die Mitglieder keine abstrakte Änderung vornehmen Attribute müssen Konstanten sein. Schnittstellenverweise unterscheiden sich vom Schlüsselwort „extends“ der Klassenvererbung. Die Vererbung kann nur einzeln erfolgen, während Schnittstellen das Schlüsselwort „implements“ verwenden können, um mehrere durch Kommas getrennte Verweise zu erhalten.
  • interface demo { 
    const NAME = "常量对象属性"; 
    function fun1(); 
    function fun2(); //抽象方法。 
    } 
    class MyPc extends Root implements demo , demo2 , demo3 { 
    ... 
    }
    Nach dem Login kopieren
    3. Die von final geänderte Klasse ist eine finale Klasse und kann nicht vererbt werden.
  • Zugriffsmodifikatoren

    1. Öffentliche öffentliche Methoden und Eigenschaften können in allen Klassen verwendet werden

    2.statische statische Methoden und Variablen
  • Wenn die Zugriffskontrollberechtigungen dies zulassen, können Sie die Klasse direkt verwenden, ohne dieses Klassenobjekt zu erstellen, wenn sie von aufgerufen wird Durch Hinzufügen von zwei Doppelpunkten „::“ zum Namen gibt es nur eine Kopie des statischen Attributs im Speicher, die von allen Instanzen gemeinsam genutzt wird. Statische Methoden können keine nicht statischen Attribute aufrufen. Nicht statische Eigenschaften können nicht mit self:: aufgerufen werden.
function test(){
static $a=1;
$a*=2;
echo $a."\n";
}
test()
test()
test()
//打印结果
//2
//4
//8
Nach dem Login kopieren

Statische Variablen werden nur einmal initialisiert und zugewiesen, und nachfolgende Testmethoden werden sie nicht erneut initialisieren.

    3. Private geänderte Methoden und Variablen sind privat und können nur in dieser Klasse aufgerufen werden (wenn diese Klasse in anderen Klassen instanziiert wird, können private geänderte Methoden und Variablen nicht als Variablen bezeichnet werden)

    4.geschützte geschützte Methoden und Variablen können nur in dieser Klasse und Unterklassen dieser Klasse verwendet werden

    5. Die endgültige geänderte Methode kann nicht überschrieben werden.
  • Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

So generieren Sie schnell moderne Formulare mit PHP


php implementiert Shared-Memory-Prozesskommunikationsfunktion (_shm )

Das obige ist der detaillierte Inhalt vonPHP-Klassenmodifikatoren und Zugriffsmodifikatoren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
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