Java-Entwurfsmuster werden im Allgemeinen in drei Hauptkategorien unterteilt: Erstellungsmuster, Strukturmuster und Verhaltensmuster. Im Folgenden wird ein Entwurfsmuster vorgestellt.
Es gibt 6 Prinzipien, denen Designmuster folgen:
1. Offen für Erweiterung , wegen Änderung geschlossen.
2. Liskov-Substitutionsprinzip
Nur wenn die abgeleitete Klasse die Basisklasse ersetzen kann und die Funktion der Softwareeinheit nicht beeinträchtigt wird, kann die Basisklasse wirklich wiederverwendet werden, und abgeleitete Klassen können dies Fügen Sie außerdem neue Verhaltensweisen hinzu, die auf Basisklassen basieren.
3. Abhängigkeitsinversionsprinzip
Dies ist die Grundlage des Öffnungs- und Schließprinzips. Die Schnittstellenprogrammierung basiert eher auf Abstraktion als auf Konkretheit.
4. Prinzip der Schnittstellentrennung
Verwenden Sie mehrere isolierte Ausreden, um die Kopplung zu reduzieren.
5. Demeter-Prinzip (Demeter-Prinzip)
Eine Entität sollte so wenig wie möglich mit anderen Entitäten interagieren, um die Funktionsmodule des Systems relativ unabhängig zu machen.
6. Prinzip der zusammengesetzten Wiederverwendung
Das Prinzip besteht darin, so viel wie möglich Synthese/Aggregation anstelle von Vererbung zu verwenden. Durch die Vererbung wird tatsächlich die Kapselung der Klasse zerstört, und die Methoden der Oberklasse können von der Unterklasse geändert werden.
Das häufig verwendete Fabrikmuster ist die statische Fabrik, die die statische Methode als ähnliche Methode für Hilfseffekte verwendet B. allgemeine Werkzeugklassen, Utils und Factory-Klassen, müssen im Allgemeinen nicht instanziiert werden.
interface food{} class A implements food{} class B implements food{} class C implements food{} public class StaticFactory { private StaticFactory(){} public static food getA(){ return new A(); } public static food getB(){ return new B(); } public static food getC(){ return new C(); } } class Client{ //客户端代码只需要将相应的参数传入即可得到对象 //用户不需要了解工厂类内部的逻辑。 public void get(String name){ food x = null ; if ( name.equals("A")) { x = StaticFactory.getA(); }else if ( name.equals("B")){ x = StaticFactory.getB(); }else { x = StaticFactory.getC(); } } }
Java Basic Tutorial
Das obige ist der detaillierte Inhalt vonWozu dienen Java-Entwurfsmuster?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!