php设计模式 State (状态模式)
复制代码 代码如下:
/**
* 状态模式
*
* 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它所属的类
*
*/
interface State
{
public function handle($state);
public function display();
}
class Context
{
private $_state = null;
public function __construct($state)
{
$this->setState($state);
}
public function setState($state)
{
$this->_state = $state;
}
public function request()
{
$this->_state->display();
$this->_state->handle($this);
}
}
class StateA implements State
{
public function handle($context)
{
$context->setState(new StateB());
}
public function display()
{
echo "state A
";
}
}
class StateB implements State
{
public function handle($context)
{
$context->setState(new StateC());
}
public function display()
{
echo "state B
";
}
}
class StateC implements State
{
public function handle($context)
{
$context->setState(new StateA());
}
public function display()
{
echo "state C
";
}
}
// 实例化一下
$objContext = new Context(new StateB());
$objContext->request();
$objContext->request();
$objContext->request();
$objContext->request();
$objContext->request();

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

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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











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.

Kontext sind die Umgebungs- und Statusinformationen, wenn das Programm ausgeführt wird. Er kann eine Vielzahl von Informationen umfassen, z. B. den Wert von Variablen, den Aufrufstapel von Funktionen, den Ausführungsort des Programms usw., sodass das Programm entsprechende Informationen bereitstellen kann Entscheidungen basierend auf unterschiedlichen Kontexten und führen entsprechende Operationen durch.

So verwenden Sie den Kontext, um die Verfolgung von Anforderungslinks in Go zu implementieren. In der Microservice-Architektur ist die Verfolgung von Anforderungslinks eine sehr wichtige Technologie, die zur Verfolgung der Zustellung und Verarbeitung einer Anforderung zwischen mehreren Microservices verwendet wird. In der Go-Sprache können wir das Kontextpaket verwenden, um die Verfolgung von Anforderungslinks zu implementieren. In diesem Artikel wird erläutert, wie der Kontext für die Verfolgung von Anforderungslinks verwendet wird, und es werden Codebeispiele gegeben. Zunächst müssen wir die grundlegenden Konzepte und die Verwendung des Kontextpakets verstehen. Das Kontextpaket stellt einen Mechanismus bereit

So verwenden Sie den Kontext, um das Caching von Anfragen in Go zu implementieren. Einführung: Beim Erstellen von Webanwendungen müssen wir häufig Anfragen zwischenspeichern, um die Leistung zu verbessern. In der Go-Sprache können wir das Kontextpaket verwenden, um die Anforderungs-Caching-Funktion zu implementieren. In diesem Artikel wird erläutert, wie das Kontextpaket zum Implementieren des Anforderungs-Caching verwendet wird, und es werden Codebeispiele bereitgestellt, um den Lesern das Verständnis zu erleichtern. Was ist Kontext? : In der Go-Sprache bietet das Kontextpaket eine Möglichkeit, zwischen mehreren Goroutinen zu wechseln

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.

So verwenden Sie den Kontext, um die Anforderungszeitüberschreitungssteuerung in Go zu implementieren. Einführung: Wenn wir Netzwerkanforderungen stellen, stoßen wir häufig auf Probleme mit der Anforderungszeitüberschreitung. Eine Netzwerkanfrage, die über einen längeren Zeitraum nicht beantwortet wird, verschwendet nicht nur Serverressourcen, sondern beeinträchtigt auch die Gesamtleistung. Um dieses Problem zu lösen, hat die Go-Sprache das Kontextpaket eingeführt, mit dem die Steuerung des Anforderungszeitlimits implementiert werden kann. In diesem Artikel wird erläutert, wie Sie mithilfe des Kontextpakets die Anforderungszeitüberschreitungssteuerung in Go implementieren, und entsprechende Codebeispiele anhängen. 1. Verstehen Sie den Kontext des Pakets co

So verwenden Sie den Kontext, um die Anforderungswiederholungsstrategie in Go zu implementieren. Einführung: Beim Aufbau eines verteilten Systems treten bei Netzwerkanforderungen zwangsläufig einige Fehler auf. Um die Zuverlässigkeit und Stabilität des Systems sicherzustellen, verwenden wir normalerweise eine Wiederholungsstrategie, um diese fehlgeschlagenen Anfragen zu bearbeiten und die Erfolgsquote der Anfrage zu erhöhen. In der Go-Sprache können wir das Kontextpaket verwenden, um die Anforderungswiederholungsstrategie zu implementieren. In diesem Artikel wird anhand von Codebeispielen erläutert, wie Sie das Kontextpaket in Go verwenden, um eine Anforderungswiederholungsstrategie zu implementieren. 1. Was ist

Das Kontextpaket in der Go-Sprache wird verwendet, um Anforderungskontextinformationen im Programm zu übergeben. Es kann Parameter übergeben, Anforderungen abfangen und Vorgänge zwischen Funktionen über mehrere Goroutinen hinweg abbrechen. Um das Kontextpaket in Go verwenden zu können, müssen wir zunächst das Paket „context“ importieren. Nachfolgend finden Sie ein Beispiel, das zeigt, wie das Kontextpaket zum Implementieren der Übergabe von Anforderungsparametern verwendet wird. packagemainimport("context"
