mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-20 20:24:47 +00:00
30 lines
787 B
Java
30 lines
787 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);
|
|
}
|
|
}
|