Designmønster – Fabriksmønster

Annoncer

Fabriksmønster er et af de mest anvendte designmønstre i Java. Denne type designmønster kommer under skabelsesmønster, da dette mønster giver en af de bedste måder at oprette et objekt på.

I fabriksmønster opretter vi objekt uden at udsætte oprettelseslogikken for klienten og henviser til nyoprettet objekt ved hjælp af en fælles grænseflade.

Implementering

Vi opretter en formgrænseflade og konkrete klasser, der implementerer formgrænsefladen. En fabriksklasse ShapeFactory defineres som et næste trin.

FactoryPatternDemo, vores demo-klasse bruger ShapeFactory til at få et Shape-objekt. Det videregiver information (CIRCLE / RECTANGLE / SQUARE) til ShapeFactory for at få den type objekt, den har brug for.

Trin 1

Opret en grænseflade.

Shape.java

public interface Shape { void draw();}

Trin 2

Opret konkrete klasser, der implementerer den samme grænseflade.

Rectangle.java

public class Rectangle implements Shape { @Override public void draw() { System.out.println("Inside Rectangle::draw() method."); }}

Firkant .java

public class Square implements Shape { @Override public void draw() { System.out.println("Inside Square::draw() method."); }}

Circle.java

public class Circle implements Shape { @Override public void draw() { System.out.println("Inside Circle::draw() method."); }}

Trin 3

Opret en fabrik til at generere objekt af betonklasse baseret på givne oplysninger.

ShapeFactory.java

Trin 4

Brug fabrikken til at få objekt af betonklassen ved at videregive en information som f.eks. type.

FactoryPatternDemo.java

Trin 5

Bekræft output.

Inside Circle::draw() method.Inside Rectangle::draw() method.Inside Square::draw() method.
Annoncer

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *