Heim > Java > javaLernprogramm > So schreiben Sie Code für ein Java-Factory-Designmuster

So schreiben Sie Code für ein Java-Factory-Designmuster

王林
Freigeben: 2023-05-02 19:52:12
nach vorne
1351 Leute haben es durchsucht

Implementierungsmethode

Wir werden eine Shape-Schnittstelle und konkrete Klassen erstellen, die die Shape-Schnittstelle implementieren. Im nächsten Schritt wird eine Factory-Klasse ShapeFactory definiert.

FactoryPatternDemo Dies ist eine Demonstrationsklasse, die ShapeFactory verwendet, um ein Shape-Objekt zu erhalten. Die Informationen (CIRCLE/RECTANGLE/SQUARE) werden an die ShapeFactory übergeben, um den erforderlichen Objekttyp zu erhalten.

Die Struktur der Implementierung des Factory-Musters ist in der folgenden Abbildung dargestellt:

java-61.jpg

Schritt 1

​Erstellen Sie eine Schnittstelle-

Shape.java

​publicinterfaceShape{

voiddraw();

}

Schritt 2

Erstellen Sie eine konkrete Klasse, die dieselbe Schnittstelle implementiert. Nachfolgend werden mehrere Kategorien angezeigt:

Rechteck.java

​publicclassRectangleimplementsShape{

​@Override

​publicvoiddraw(){

System.out.println("InsideRectangle::draw()method.");

}

}

Square.java

​publicclassSquareimplementsShape{

​@Override

​publicvoiddraw(){

System.out.println("InsideSquare::draw()method.");

}

}

​Circle.java

​publicclassCircleimplementsShape{

​@Override

​publicvoiddraw(){

System.out.println("InsideCircle::draw()method.");

}

}

Schritt 3

Erstellen Sie eine Fabrik, um Objekte bestimmter Klassen basierend auf gegebenen Informationen zu generieren.

ShapeFactory.java

​publicclassShapeFactory{

//usegetShapemethodtogetobjectoftypeshape

publicShapegetShape(StringshapeType){

​if(shapeType==null){

returnnull;

}

​if(shapeType.equalsIgnoreCase("CIRCLE")){

returnnewCircle();

}elseif(shapeType.equalsIgnoreCase("RECTANGLE")){

returnnewRectangle();

}elseif(shapeType.equalsIgnoreCase("SQUARE")){

returnnewSquare();

}

returnnull;

}

}

Schritt 4

Verwenden Sie eine Factory, um ein Objekt einer bestimmten Klasse abzurufen, indem Sie Informationen wie den Typ übergeben.

FactoryPatternDemo.java

​publicclassFactoryPatternDemo{

publicstaticvoidmain(String[]args){

ShapeFactoryshapeFactory=newShapeFactory();

//getanobjectofCircleandcallitsdrawmethod.

Shapeshape1=shapeFactory.getShape("CIRCLE");

//calldrawmethodofCircle

shape1.draw();

//getanobjectofRectangleandcallitsdrawmethod.

Shapeshape2=shapeFactory.getShape("RECTANGLE");

//calldrawmethodofRectangle

shape2.draw();

//getanobjectofSquareandcallitsdrawmethod.

Shapeshape3=shapeFactory.getShape("SQUARE");

//calldrawmethodofcircle

shape3.draw();

}

}

Schritt 5

Die Ergebnisse der Überprüfungsausgabe lauten wie folgt:

​InsideCircle::draw()method.

​InsideRectangle::draw()method.

​InsideSquare::draw()method.

So schreiben Sie Code für ein Java-Factory-Designmuster

Das obige ist der detaillierte Inhalt vonSo schreiben Sie Code für ein Java-Factory-Designmuster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage