工厂模式

来源:互联网 发布:java 公章识别 编辑:程序博客网 时间:2024/05/22 12:31

对于接口而言,接口是实现多重继承的途径。

工厂方法设计模式:生成某个接口的对象的典型方式就是工厂方法设计模式,工厂模式与直接电泳构造器不同,我们在工厂对象上调用的是创建方法,而该

工厂对象将生成 接口的某个实现的对象,通过这种方式,我们的代码将完全与接口的实现分离。

下面的例子就是典型的工厂设计模式

interface Game{boolean move();}interface GameFactory{Game getGame();}class Checkers implements Game{    private int moves = 0;    private static final int MOVES = 3;    public boolean move(){    System.out.println("Checkers move " + moves);    return ++moves != MOVES;    }}class CheckersFactory implements GameFactory{public Game getGame(){return new Checkers();}}class Chess implements Game{private int moves = 0;private static  final int MOVES = 4;public boolean move(){System.out.println("Chess move " + moves);return ++moves != MOVES;}}class ChessFactory implements GameFactory{public Game getGame(){return new Chess();}}public class Games {    public static void playGame(GameFactory factory){    Game s = factory.getGame();    while(s.move()){    ;    }    }    public static void main(String[] args) {playGame(new CheckersFactory());playGame(new ChessFactory());}}
输出结果为:

Checkers move 0Checkers move 1Checkers move 2Chess move 0Chess move 1Chess move 2Chess move 3

0 0
原创粉丝点击