JAVA设计模式之工厂模式(静态工厂模式)
来源:互联网 发布:java graphics 方法 编辑:程序博客网 时间:2024/05/20 13:12
工厂模式:
前提:实现同一个接口,即顶级接口是一个接口
代码
- 定义一个玩游记的接口
/** * 定义一个接口: * 方法:玩游戏 */package ac.bcc.cn.interf;public interface Play { /** * 玩的方法 */ public abstract void paly();}
2.定义两个实现类
/** *此类实现Play接口 */package ac.bcc.cn.clas;import ac.bcc.cn.interf.Play;public class PlayBasketBale implements Play { @Override public void paly() { System.out.println("正在打篮球"); }}/** * 此类实现Play接口 */package ac.bcc.cn.clas;import ac.bcc.cn.interf.Play;public class PlayComputer implements Play{ @Override public void paly() { System.out.println("正在打LOL"); }}
3.创建工厂类
/** * 工厂类:使用多态,创建对象 */package ac.bcc.cn.factory;import ac.bcc.cn.clas.PlayBasketBale;import ac.bcc.cn.clas.PlayComputer;import ac.bcc.cn.interf.Play;public class GameFactory { /** * 生成 打篮球对象 * @return */ public static Play basketBaleGame(){ return new PlayBasketBale(); } /** * 生成打电子游戏对象 * @return */ public static Play computerGame(){ return new PlayComputer(); }}
4.测试
测试类/** * 测试类 */package ac.bcc.cn.test;import ac.bcc.cn.factory.GameFactory;import ac.bcc.cn.interf.Play;public class Test { public static void main(String[] args) { //通过工厂,获取打电子游戏对象 Play computerGame = GameFactory.computerGame(); computerGame.paly(); //通过工厂,获取打电子游戏对象 Play basketBaleGame = GameFactory.basketBaleGame(); basketBaleGame.paly(); }}
5:结果:
阅读全文
0 0
- JAVA设计模式之工厂模式(静态工厂模式)
- 设计模式之静态工厂模式
- 设计模式之静态工厂模式
- 设计模式初探之静态工厂模式
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- java设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式+抽象工厂模式)
- 设计模式--静态工厂
- 静态工厂设计模式
- 设计模式-静态工厂
- JAVA设计模式之工厂模式之简单工厂模式
- JAVA设计模式之工厂模式之工厂方法模式
- java代码实现身份证第18位的计算和验证身份证号码是否是真实有效.
- Java知识点总结(二)面向对象
- 排序详解:统计排序
- 4.1 TCP 连接
- android studio的build.gradle文件分析
- JAVA设计模式之工厂模式(静态工厂模式)
- Hadoop(三)
- FragmentTabHost中tab项的单击事件
- 每天一个linux命令(1):ls命令
- MySQL临时表的简单用法 在大数据量时有时会加快查询速度
- js 文件上传插件(支持上传进度信息)
- tp中订单详情中ajax更换收货地址。
- java抽象类与接口的区别
- Centos pip install mysqlclient Error