简单工厂模式

原创 2016年08月31日 00:03:39
  1. Factory

    • 顶层接口
package com.wayne.factory;

import com.wayne.pojo.IMoveable;

public interface IVichelFactory {
    IMoveable create();
}
  • 两个实现类

CarFactory.java

package com.wayne.factory;

import com.wayne.pojo.Car;
import com.wayne.pojo.IMoveable;

public class CarFactory implements IVichelFactory {

    @Override
    public IMoveable create() {
        return new Car();
    }

}

PlaneFactory.java

package com.wayne.factory;

import com.wayne.pojo.IMoveable;
import com.wayne.pojo.Plane;

public class PlaneFactory implements IVichelFactory {

    @Override
    public IMoveable create() {
        return new Plane();
    }

}
  1. pojo

    • 顶层接口
package com.wayne.pojo;

public interface IMoveable {
    void run();
}
  • 两个实现类

Car.java

package com.wayne.pojo;

public class Car implements IMoveable {

    @Override
    public void run() {
        System.out.println("Car来了。。。。。。");
    }

}

Plane.java

package com.wayne.pojo;

public class Plane implements IMoveable {

    @Override
    public void run() {
        System.out.println("Plane飞来了");
    }

}
  1. test
package com.wayne.test;

import com.wayne.factory.IVichelFactory;
import com.wayne.factory.PlaneFactory;
import com.wayne.pojo.IMoveable;

public class MyTest {

    public static void main(String[] args) {
        IVichelFactory factory = new PlaneFactory();
        //IVichelFactory factory = new CarFactory();
        IMoveable m = factory.create();
        m.run();
    }

}

总结:
一个模块对扩展应是开放的,对修改应是关闭的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

JAVA实战练习——俄罗斯方块(超简易版)

此文章根据网络上的视频培训而来。目的只是用来学习和研究。
  • a80C51
  • a80C51
  • 2015-10-26 09:37
  • 9500

关于俄罗斯方块问题,想的头都炸了!!!

下面是我的源代码:问题是:程序有时可以正常运行,但有时无法正常运行,无法正常运行的时候就会抛出空指针异常!可以正常运行时当方块运行到边界底部时就会出现数组角标越界异常!!!真心是无奈了,求哪位大神不吝...

贪吃蛇的java代码分析(三)

代码剖析 在上一篇文章中,我们完成了贪吃蛇部分代码的构造。回头审视我们写的代码与思路,会发现我们遗漏了一个重要的地方,那就是:贪吃蛇的自身移动。想必大家都知道,贪吃蛇自身是会自己移动的,并且会跟随你的...

Java swing 写的贪吃蛇代码200行

刚学完书上java的swing,无聊做个贪吃蛇练练, 200多行的代码也写了好几个小时 0.0! 代码整体分成三块: * greedySnackMain:框架类 * snackWin: 面板...

贪吃蛇的java代码分析(一)

自我审视 最近自己学习java已经有了一个多月的时间,从一开始对变量常量的概念一无所知,到现在能勉强写几个小程序玩玩,已经有了长足的进步。今天没有去学习,学校里要进行毕业答辩和拍毕业照了,于是请了...

简单工厂模式

  • 2017-08-16 20:07
  • 60.84MB
  • 下载

简单工厂模式--Java

简单工厂模式:由一个叫做工厂类的东西决定生产什么样的实例,你只要传递一个信息给工厂类,工厂类就知道应该生产什么样的产品。 工厂:生产具体产品的东西 产品:继承了一个基类或者接口,这个接口或基类抽象...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)