Heim  >  Artikel  >  Java  >  Wozu dienen Java-Entwurfsmuster?

Wozu dienen Java-Entwurfsmuster?

(*-*)浩
(*-*)浩Original
2019-05-21 13:25:084250Durchsuche

Java-Entwurfsmuster werden im Allgemeinen in drei Hauptkategorien unterteilt: Erstellungsmuster, Strukturmuster und Verhaltensmuster. Im Folgenden wird ein Entwurfsmuster vorgestellt.

Wozu dienen Java-Entwurfsmuster?

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.


Fabrikmethode des Erstellungsmusters


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();
        }
    }
}

Verwandte Lernempfehlungen:
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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Wie lerne ich Java EE?Nächster Artikel:Wie lerne ich Java EE?