


PHP objektorientiert – Beispielcode für die gemeinsame Nutzung einer Unterklasse, die die übergeordnete Klasse erweitert (Unterklasse, die die übergeordnete Klasse neu lädt)
In PHP werden Sie auf eine Situation stoßen, in der die Unterklasse die übergeordnete Klasse erbt, Sie jedoch bestimmte Änderungen an den Attributen und Methoden Erweiterung, dann kann die Unterklasse die Eigenschaften und Methoden neu schreiben und die Eigenschaften und Methoden mit demselben Namen wie die übergeordnete Klasse abdecken. Wenn der Inhalt der Methode der übergeordneten Klasse jedoch relativ groß ist, beispielsweise Hunderte oder Tausende von Codezeilen , dann nur „parent class name::method“ oder „parent::method“ verwenden, um die überschriebene Methode im aufzurufen parent class , es gibt nur , um die übergeordnete Klasse neu zu laden und dann die Anweisungen hinzuzufügen, die erweitert werden müssen.
Überschreiben von Methoden
<?php class Person{ public $name; public function construct($name="" ){ $this->name=$name; } public function say(){ echo "我叫".$this->name ; } }?><?php class Student extends Person{ public $name; public function construct($name=""){ $this->name =$name; }//这里定义了一个和父类中同名的方法,将父类中的说话方法覆盖并重写 public function say(){ echo "我叫".$this->name .",今年25岁了" ; } }?>
Überschreiben von Methoden und Zugriffsberechtigungen
Wenn eine Unterklasse eine Methode der übergeordneten Klasse überschreibt, beachten Sie bitte, dass die Zugriffsrechte der überschriebenen Methode in der untergeordneten Klasse nicht niedriger sein dürfen als die Zugriffsrechte der überschriebenen Methode der übergeordneten Klasse. Wenn beispielsweise die Zugriffsberechtigung einer Methode in der übergeordneten Klasse geschützt ist, muss die Zugriffsberechtigung der in der Unterklasse überschriebenen Methode geschützt oder öffentlich sein. Wenn die Methode der übergeordneten Klasse über öffentliche Berechtigungen verfügt, kann die zu überschreibende Methode in der Unterklasse nur öffentlich sein. Kurz gesagt: Wenn Sie eine Methode der übergeordneten Klasse in einer Unterklasse überschreiben, muss diese über höhere Berechtigungen verfügen als die überschriebene Methode der übergeordneten Klasse.Die Anzahl der Parameter beim Überschreiben
Unterklassen können eine andere Anzahl von Parametern als die übergeordnete Klasse haben, wie zum Beispiel das folgendeKonstruktor wird ein zusätzlicher Parameter $age hinzugefügt.
<?phpclass Student extends Person{ public $name; public $age; public function construct($name="",$age=25){ $this->name =$name; $this->age =$age; } public function say(){ echo "我叫".$this->name .",今年".$this->age."岁了" ; } }?>
Obwohl dadurch das oben erwähnte Problem gelöst wird, kann eine Methode in der tatsächlichen Entwicklung nicht nur aus einem oder mehreren Codes bestehen, wie beispielsweise die Methode „say()“ in der Klasse „Person“. Es gibt 100 Zeilen davon Wenn wir diese Methode überschreiben und die ursprünglichen Funktionen beibehalten und etwas mehr Funktionalität hinzufügen möchten, müssen wir die ursprünglichen 100 Codezeilen plus ein paar erweiterte Codezeilen neu schreiben In einigen Fällen kann die Methode in der übergeordneten Klasse den Originalcode nicht sehen. Wie kann der Originalcode zu diesem Zeitpunkt neu geschrieben werden? Wir haben auch eine Lösung: Sie können in der Unterklassenmethode die überschriebene Methode in der übergeordneten Klasse aufrufen und einige Ihrer eigenen Funktionen hinzufügen . So implementieren Sie den Aufruf der überschriebenen Methode der übergeordneten Klasse in der Methode der untergeordneten Klasse:
Erweiterung der Methode
Was oben beschrieben wird, ist lediglich das<?phpclass Student extends Person{ public $name; public $age; public function construct($name="",$age=25){ parent::construct($name,$age); $this->age =$age; } public function say(){ parent::say(); echo ",今年".$this->age."岁了" ; } }?>
Neuladen der Attribute und Methoden der übergeordneten Klasse. Es handelt sich nicht um eine Überladung Man kann nur sagen, dass es sich um ein Unterklassenpaar handelt. In PHP gibt es auch das Wort Überladung, aber die Bedeutung von Überladung unterscheidet sich von der in allgemeinen sprachorientierten Sprachen.
Das obige ist der detaillierte Inhalt vonPHP objektorientiert – Beispielcode für die gemeinsame Nutzung einer Unterklasse, die die übergeordnete Klasse erweitert (Unterklasse, die die übergeordnete Klasse neu lädt). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.
