mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-19 11:25:58 +00:00
30 lines
832 B
Java
30 lines
832 B
Java
package com.iluwatar;
|
|
|
|
/**
|
|
*
|
|
* The essence of the Abstract Factory pattern is a factory interface (KingdomFactory)
|
|
* and its implementations (ElfKingdomFactory, OrcKingdomFactory).
|
|
*
|
|
* The example uses both concrete implementations to create a king, a castle and an
|
|
* army.
|
|
*
|
|
*/
|
|
public class App
|
|
{
|
|
public static void main( String[] args )
|
|
{
|
|
createKingdom(new ElfKingdomFactory());
|
|
createKingdom(new OrcKingdomFactory());
|
|
}
|
|
|
|
public static void createKingdom(KingdomFactory factory) {
|
|
King king = factory.createKing();
|
|
Castle castle = factory.createCastle();
|
|
Army army = factory.createArmy();
|
|
System.out.println("The kingdom was created.");
|
|
System.out.println(king);
|
|
System.out.println(castle);
|
|
System.out.println(army);
|
|
}
|
|
}
|