Dieser Artikel beschreibt das Factory -Methodenmodell des Java -Designmusters. Teilen Sie es für Ihre Referenz wie folgt weiter:
Das Factory -Method -Modell wird sehr häufig verwendet und kann immer in unserer täglichen Entwicklung gesehen werden. Es ist definiert als: Definieren Sie eine Schnittstelle zum Erstellen eines Objekts. Lassen Sie die Unterklasse jedoch entscheiden, welche Klasse sofort eingeschaltet wird. Mit der mithilfe von Funktionsmethoden können Sie eine Klassen -Instanziierung in Unterklassen verschieben. (Definieren Sie eine Schnittstelle zum Erstellen eines Objekts und lassen Sie die Unterklasse entscheiden, welche Klasse so instanziiert werden soll. Eine Fabrikmethode ist die Instanziierung einer Klasse, die auf ihre Unterklasse verzögert wurde.
Vorteile des Fabrikmethodemodells:
1. Gute Kapselung und klare Codestruktur. Eine Objekterstellung ist eine bedingte Einschränkung. .
2. Das Factory -Methode -Modell hat eine hervorragende Skalierbarkeit. Wenn Sie Produktkategorien addiert haben, können Sie die "Veränderung" vervollständigen, solange Sie die spezifische Fabrikkategorie angemessen ändern oder eine Fabrikkategorie erweitern.
3.. Produktkategorien blockieren. Dies ist sehr wichtig. ändern. Da die Instanziierung einer Produktklasse in der Verantwortung der Fabrikklasse liegt, wird die spezifische Produktgenerierung eines Produktobjekts von der Fabrikklasse bestimmt.
V. . Mit hoher Modul-Werte müssen die abstrakten Klasse des Produkts nicht vorhanden sein. Das Prinzip der Abhängigkeitsumkehrung und nur auf die abstrakte Klasse des Produkts.
Der gemeinsame Code für das Fabrikmethodenmuster lautet wie folgt:
// Abstract Product Class Public Abstract Class Produkt {// öffentliche Methode der Produktklasse public void Methode1 () {// Business Logic Processing} // Abstract Methode Public Abstract Void Method2 ();};}Es kann mehrere spezifische Produktkategorien geben, die alle aus abstrakten Produktkategorien geerbt werden. Der Quellcode lautet wie folgt:
// Spezifische Produktkategorie öffentliche Klasse ConcreteProduct1 erweitert das Produkt {public void method2 () {// Business Logic Processing}} Public Class ConcreteProduct2 erweitert das Produkt {publig ic void method2 () {// Business Logic Processing}}Die abstrakte Fabrikklasse ist für die Definition der Erzeugung von Produktobjekten verantwortlich. Der Quellcode lautet wie folgt:
// Abstract Factory Class Public abstrakter Klasse Ersteller {/***Erstellen einer Produktklasse, deren Eingabeparametertypen von sich selbst festgelegt werden können, in der Regel String, Enum, Klasse, natürlich leer sein*/public Abstract <T erweitert Produkt> T CreateProdu ct (Klasse <T> cls);}So generieren ein Produktobjekt in bestimmten Fabrikklassen, ist der Quellcode wie folgt:
// Spezifische Fabrikklasse Conctetecreator erweitert den Schöpfer {public <t erweitert das Produkt> T CreateProdu (Klasse <T> cls) {product = null; );Die aufrufende Methode der Szenenklasse lautet wie folgt:
// Szenenklasse Class Client {public static void main (String [] args) {Creator Creator = New ConcreTecreator (); }Das Ändern des allgemeinen Code ist ein relativ praktisches und leicht zu erweitertes Framework, und die Leser können entsprechend den tatsächlichen Projektanforderungen erweitern.
Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.