php策略模式的有关问题~下~多谢 帮改下下面的代码
php策略模式的问题~~~高手指点下~~谢谢 帮改下下面的代码
我把学武术 和使用武器做成了接口,行为做成了类 但怎么用都是很乱,,高手指点下。完了立刻给分
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><?php abstract class person{ abstract public function speak(); public $a; public $wq; public function studywx($wx){ $a=new $wx; return $a; } public function usewq($wq){ $a=new $wq; return $wq; } } class chperson extends person{ public function speak(){ echo "中国人在说话,各路让行!~"; } } class amperson extends person{ public function speak(){ echo "美国人在说,叽叽喳喳!~"; } } class enperson extends person{ public function speak(){ echo "英国人在叫,汪汪汪~"; } } interface istudy{ public function studywx(); public function studyyy(); } class studyw implements istudy{ public function studywx(){ echo "学习武术"; } } class studtq implements istudy{ public function studywx(){ echo "学习泰拳"; } } interface iwq{ public function usewq(); } class jian implements iwq{ public function usewq(){ echo "用剑" } } class qiang implements iwq{ public function usewq(){ echo "用洋枪" } } class xiaoqiang implements iwq{ public function usewq(){ echo "用小米加布枪" } } $chperson=new chperson(); $chperson->studywx(studtq); $chperson->usewq(xiaoqiang); $chperson->studywx(studtq); $amperson=new amperson(); $amperson->studywx(studyw); $amperson->usewq(xiaoqiang); $amperson->studywx(qiang); ?>
------解决方案--------------------
稍微简化了你的例子,看注释应该清晰多了吧
- PHP code
<?php abstract class person{ abstract public function speak(); public $a; public $wq; public function studywx($wx){ $wx->studywx(); } public function usewq($wq){ $wq->usewq(); } } class chperson extends person{ public function speak(){ echo "中国人在说话,各路让行!~"; } } class amperson extends person{ public function speak(){ echo "美国人在说,叽叽喳喳!~"; } } interface istudy{ public function studywx(); } class studyw implements istudy{ public function studywx(){ echo "如来神掌"; } } class studtq implements istudy{ public function studywx(){ echo "葵花宝典"; } } interface iwq{ public function usewq(); } class jian implements iwq{ public function usewq(){ echo "倚天剑"; } } class qiang implements iwq{ public function usewq(){ echo "洋枪"; } } $chiness=new chperson();//上来个中国人 $chiness->studywx(new studyw()); //给本如来神掌学 $chiness->usewq(new jian());//给他把倚天剑 $american=new amperson();//上来个美国人 $american->studywx(new studtq());//给本葵花宝典学 $american->usewq(new qiang());//给他个破洋枪 <div class="clear"> </div>

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

Konzepte und Instanzen von Klassen und Methoden Klasse (Klasse): wird verwendet, um eine Sammlung von Objekten mit denselben Eigenschaften und Methoden zu beschreiben. Es definiert die Eigenschaften und Methoden, die jedem Objekt in der Sammlung gemeinsam sind. Objekte sind Instanzen von Klassen. Methode: In der Klasse definierte Funktion. Klassenkonstruktionsmethode __init__(): Die Klasse verfügt über eine spezielle Methode (Konstruktionsmethode) namens init(), die automatisch aufgerufen wird, wenn die Klasse instanziiert wird. Instanzvariablen: In der Deklaration einer Klasse werden Attribute durch Variablen dargestellt. Solche Variablen werden Instanzvariablen genannt. Instanziierung: Erstellen Sie eine Instanz einer Klasse, ein bestimmtes Objekt der Klasse. Vererbung: Das heißt, eine abgeleitete Klasse (derivedclass) erbt die Basisklasse (baseclass).

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.

Jedes Jahr bevor Apple eine neue Hauptversion von iOS und macOS veröffentlicht, können Benutzer die Betaversion mehrere Monate im Voraus herunterladen, um sie zuerst zu testen. Da die Software sowohl von der Öffentlichkeit als auch von Entwicklern verwendet wird, hat Apple für beide Entwickler- und öffentliche Versionen herausgebracht, bei denen es sich um öffentliche Betaversionen der Entwickler-Betaversionen handelt. Was ist der Unterschied zwischen der Entwicklerversion und der öffentlichen Version von iOS? Im wahrsten Sinne des Wortes handelt es sich bei der Entwicklerversion um eine Entwickler-Betaversion und bei der öffentlichen Version um eine öffentliche Betaversion. Die Entwicklerversion und die öffentliche Version richten sich an unterschiedliche Zielgruppen. Die Entwicklerversion wird von Apple zum Testen durch Entwickler verwendet. Sie benötigen ein Apple-Entwicklerkonto, um sie herunterzuladen und zu aktualisieren.

jQuery ist eine klassische JavaScript-Bibliothek, die in der Webentwicklung weit verbreitet ist. Sie vereinfacht Vorgänge wie die Verarbeitung von Ereignissen, die Bearbeitung von DOM-Elementen und die Durchführung von Animationen auf Webseiten. Bei der Verwendung von jQuery kommt es häufig vor, dass Sie den Klassennamen eines Elements ersetzen müssen. In diesem Artikel werden einige praktische Methoden und spezifische Codebeispiele vorgestellt. 1. Verwenden Sie die Methoden „removeClass()“ und „addClass()“. jQuery stellt die Methode „removeClass()“ zum Löschen bereit

Klasse ist ein Schlüsselwort in Python, das zum Definieren einer Klasse verwendet wird: Fügen Sie nach der Klasse ein Leerzeichen hinzu und fügen Sie dann den Klassennamen hinzu. Wenn es mehrere Wörter gibt, verwenden Sie die Groß-/Kleinschreibung Benennung, wie zum Beispiel [class Dog()].

Hintergrund In letzter Zeit wurden wichtige Geschäftscodes für das Unternehmens-Framework verschlüsselt, um zu verhindern, dass der technische Code durch Dekompilierungstools wie jd-gui einfach wiederhergestellt werden kann. Die Konfiguration und Verwendung des zugehörigen Verschleierungsschemas ist relativ komplex und es gibt viele Probleme für Springboot-Projekt, also werden die Klassendateien verschlüsselt und dann wird der benutzerdefinierte Klassencoder entschlüsselt und geladen. Dies erhöht nur die Schwierigkeit der Dekompilierung. Es wird das allgemeine Flussdiagramm zum Verschlüsselungsschutz angezeigt In der Abbildung unten verschlüsselt das Maven-Plugin die Kompilierung mit einem benutzerdefinierten Maven-Plugin. Nach der Verschlüsselung der angegebenen Klassendatei wird die verschlüsselte Klassendatei in den angegebenen Pfad kopiert und hier in „resource/corecla“ gespeichert

Beim Schreiben von PHP-Code ist die Verwendung von Klassen eine weit verbreitete Praxis. Durch die Verwendung von Klassen können wir verwandte Funktionen und Daten in einer einzigen Einheit kapseln, wodurch der Code klarer, leichter lesbar und einfacher zu warten ist. In diesem Artikel wird die Verwendung von PHPClass ausführlich vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, besser zu verstehen, wie Klassen zur Optimierung von Code in tatsächlichen Projekten angewendet werden. 1. Klassen erstellen und verwenden In PHP können Sie das Schlüsselwort class verwenden, um eine Klasse zu definieren und Eigenschaften und Methoden in der Klasse zu definieren.

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code
