


Erlernen des PHP-Strategiemusters – Zitat aus „Ausführliche objektorientierte PHP-Muster und -Praxis'
#策略(Strategy)模式 #定义抽象类 Lesson abstract class Lesson{ private $duration; private $coststrategy; #定义属性 public function __construct($duration , CostStrategy $strategy){ #实例化时,传进来一个对象 #用CostStrategy 类来处理 某个行为,而不用调用自身的方法来处理 $this->duration =$duration; $this->coststrategy = $strategy; } public function cost(){ return $this->coststrategy->cost($this); # ??? ??? ??? ??? ??? ??? ??? ??? ??? } #不是用抽象类的 abstract CostStrategy 类 中的方法 cost 来实现的, #从输出的值看来 是用的 #TimedCostStrategy #FixedCostStrategy 中 的方法,所以 # 在实例化对象时,用了 #TimedCostStrategy #FixedCostStrategy 中 的方法 public function chargeType(){ return $this->coststrategy->chargeType(); } public function getDuration(){ return $this->duration; } } abstract class CostStrategy{ #抽象类是不能实例化的 abstract function cost( Lesson $lesson); #传入的参数是对象 abstract function chargeType(); } class TimedCostStrategy extends CostStrategy{ public function cost(Lesson $lesson){ return ($lesson->getDuration()*5); # 在Lesson 类中,getDuration 的返回值是 return $this->duration; } public function chargeType(){ return 'hourly rate!'; } } class FixedCostStrategy extends CostStrategy{ function cost(Lesson $lesson){ return 30; #此处为调用如何方法,只是单纯的返回一个值 } function chargeType(){ return 'fixed rate'; } } #继承类Lesson class Lecture extends Lesson{ } #继承类Lesson class Seminar extends Lesson{ } #实例化对象 $lessons[] = new Seminar(4,new TimedCostStrategy()); #生成了一个TimeConsTrategy的一个对象 $lessons[]= new Lecture(4 , new FixedCostStrategy()); #生成了一个FixedConsTrategy的一个对象 #分别 调用TimeConsTrategy && FixedConsTrategy 中的方法 const() 和 chargeType(),在执行遍历 foreach ($lessons as $lesson) { # 遍历输出 print "lesson charge {$lesson->cost()}==>>"; print "Charge type: {$lesson->chargeType()}<br/>"; }
Das Obige stellt das Erlernen des PHP-Strategiemodus vor – zitiert aus „Ausführliche objektorientierte PHP-Muster und -Praxis“, einschließlich Aspekten des Inhalts. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.

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

Die Verwendung von return in der C-Sprache ist: 1. Für Funktionen, deren Rückgabewerttyp ungültig ist, können Sie die Rückgabeanweisung verwenden, um die Ausführung der Funktion vorzeitig zu beenden. 2. Für Funktionen, deren Rückgabewerttyp nicht ungültig ist, ist die Funktion von Die Return-Anweisung dient dazu, die Ausführung der Funktion zu beenden. 3. Beenden Sie die Ausführung der Funktion vorzeitig wenn die Funktion keinen Wert zurückgibt.

Funktion bedeutet Funktion. Es handelt sich um einen wiederverwendbaren Codeblock mit bestimmten Funktionen. Er kann Eingabeparameter akzeptieren, bestimmte Operationen ausführen und Ergebnisse zurückgeben. Code, um die Wiederverwendbarkeit und Wartbarkeit des Codes zu verbessern.

Quellcode: publicclassReturnFinallyDemo{publicstaticvoidmain(String[]args){System.out.println(case1());}publicstaticintcase1(){intx;try{x=1;returnx;}finally{x=3;}}}# Ausgabe Die Ausgabe des obigen Codes kann einfach zu dem Schluss kommen: return wird ausgeführt, bevor wir uns schließlich ansehen, was auf der Bytecode-Ebene passiert. Im Folgenden wird ein Teil des Bytecodes der Methode case1 abgefangen und mit dem Quellcode verglichen, um die Bedeutung jeder Anweisung darin zu kommentieren

In diesem Artikel lernen wir die Funktion enumerate() und den Zweck der Funktion „enumerate()“ in Python kennen. Was ist die Funktion enumerate()? Die Funktion enumerate() von Python akzeptiert eine Datensammlung als Parameter und gibt ein Aufzählungsobjekt zurück. Aufzählungsobjekte werden als Schlüssel-Wert-Paare zurückgegeben. Der Schlüssel ist der Index, der jedem Element entspricht, und der Wert sind die Elemente. Syntax enumerate(iterable,start) Parameter iterable – Die übergebene Datensammlung kann als Aufzählungsobjekt namens iterablestart zurückgegeben werden – Wie der Name schon sagt, wird der Startindex des Aufzählungsobjekts durch start definiert. wenn wir es ignorieren

Detaillierte Erläuterung der Rolle und Funktion der MySQL.proc-Tabelle. MySQL ist ein beliebtes relationales Datenbankverwaltungssystem. Wenn Entwickler MySQL verwenden, müssen sie häufig gespeicherte Prozeduren erstellen und verwalten. Die MySQL.proc-Tabelle ist eine sehr wichtige Systemtabelle. Sie speichert Informationen zu allen gespeicherten Prozeduren in der Datenbank, einschließlich des Namens, der Definition, der Parameter usw. der gespeicherten Prozeduren. In diesem Artikel erklären wir ausführlich die Rolle und Funktionalität der MySQL.proc-Tabelle

Vue3.2-Setup-Syntaxzucker ist ein Syntaxzucker zur Kompilierungszeit, der die kombinierte API in einer einzelnen Dateikomponente (SFC) verwendet, um das umständliche Setup in Vue3.0 zu lösen. Die durch den Import eingeführten deklarierten Variablen, Funktionen und Inhalte werden bereitgestellt Rückkehr, damit sie in Vue3.0 verwendet werden können. 1. Es besteht keine Notwendigkeit, deklarierte Variablen, Funktionen und Inhalte zurückzugeben, die durch Import während der Verwendung eingeführt wurden }from'./utils'//variable constmsg='Hello !'//function func

JavaScript-Funktionen stellen zwei Schnittstellen zur Interaktion mit der Außenwelt bereit. Die Parameter dienen als Eingang zum Empfang externer Informationen; der Rückgabewert dient als Ausgang für die Rückmeldung der Operationsergebnisse an die Außenwelt. Der folgende Artikel wird Ihnen helfen, den Rückgabewert der JavaScript-Funktion zu verstehen und die Verwendung der Rückgabeanweisung kurz zu analysieren. Ich hoffe, er wird Ihnen hilfreich sein!

Bei der Rückgabe des Python-Rückgabewerts wird die Ausführung sofort gestoppt, wenn die Funktion die Rückgabeanweisung ausführt, und der angegebene Wert wird an die Stelle zurückgegeben, an der die Funktion aufgerufen wurde. Detaillierte Verwendung: 1. Einen einzelnen Wert zurückgeben; 2. Einen Nullwert zurückgeben; 4. Die Ausführung der Funktion vorzeitig beenden;
