//Printer接口
interface IPrinter {
//接口printByString方法声明
public void printByString(String str);
}

//MyPrinter实现Printer接口
class MyPrinter implements IPrinter {
public void printByString(String str) {
System.out.println(str);
}
}

//IPrinter对象工厂,用于创建实现接口的类对象
class PrinterFactory {

  String str = "MyPrinter";//通过字符串寻找实现接口的类,字符串可从文件中读取获得,从而实现IOC模式
//工厂方法,返回IPrinter接口实例
public static IPrinter createPrinter() throws InstantiationException,
ClassNotFoundException, IllegalAccessException {
return (IPrinter) Class.forName(str).newInstance();//返回IF_Printer接口实例
}
}

测试方法

public static void main(String[] args) {
try {
PrinterFactory.createPrinter().printByString("Hello World~!");
} catch (Exception ex) {
System.out.println(ex.toString());
}
}

factory(工厂) 模式简单示例相关推荐

  1. JavaScript 设计模式核⼼原理与应⽤实践 之 创建型:工厂模式·简单工厂——区分“变与不变”

    JavaScript 设计模式核⼼原理与应⽤实践 之 创建型:工厂模式·简单工厂--区分"变与不变" 先来说说构造器 在介绍工厂模式之前,为了辅助大家的理解,我想先在这儿给大家介绍 ...

  2. boost::flyweight模块实现自定义工厂模式的示例

    boost::flyweight模块实现自定义工厂模式的示例 实现功能 C++实现代码 实现功能 boost::flyweight模块实现自定义工厂模式的示例 C++实现代码 #include < ...

  3. C++设计模式 | Factory工厂模式(简单工厂、工厂方法、抽象工厂)

    目录 简单工厂 工厂方法 抽象工厂 学习工厂模式需要有C++虚函数 纯虚函数等相关继承与多态知识 简单工厂 在简单工厂模式中,可以根据参数的不同返回不同的实例..简单工厂模式专门定义一个类来负责创建其 ...

  4. 简单工厂模式代码示例

    一. 抽象接口INoodles: package designpattern.factory.simplefactory.noodles;public interface INoodles {/*** ...

  5. java 抽象工厂模式简单实例

    抽象工厂模式:提供一个创建一系列的相关的或者依赖的对象的接口,无需指定它们的具体实现类,具体的时间分别在子类工厂中产生. 类似于工厂模式:隔离了具体类的生产实现,使得替换具体的工厂实现类很容易.包含有 ...

  6. Factory - 工厂模式

    在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的.但是在一些情况下, new操作符直接生成对象会带来一些问题.举例来说, 许多类型对象的创造需要一 ...

  7. 详解设计模式之工厂模式(简单工厂+工厂方法+抽象工厂)

    园子里关于23种设计模式的博文已经可以说是成千上万.车载斗量.屯街塞巷.不计其数.数不胜数.摩肩接踵.汗牛充栋.车水马龙.门庭若市.琳琅满目直至让人眼花缭乱了.在这样的大环境下之所以来写设计模式类的博 ...

  8. 创建型模式:工厂模式(简单工厂+工厂方法+抽象工厂)

    一.引子 话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰).Bmw(宝马).Audi(奥迪)),还雇了司机为他开车.不过,爆发户坐车时总是这样:上Benz车后跟司机说"开奔驰车!& ...

  9. 详解设计模式之工厂模式(简单工厂+工厂方法+抽象工厂) v阅读目录

    1楼留头头大神:http://www.cnblogs.com/toutou/p/4899388.html v阅读目录 v写在前面 v简单工厂模式 v工厂方法模式 v抽象工厂模式 v博客总结 v博客前言 ...

  10. Angularjs切换网站配色模式简单示例1(切换css文件)

    一个网站可以有多种配色方案,例如正常模式,夜间模式等. 简单示例一个通过点击按钮,更换css文件,达到切换配色模式的angularjs 小app. 主要文件有三个:index.html(主文件),wh ...

最新文章

  1. keras 的 example 文件 addition_rnn.py 解析
  2. 拟合一条曲线_毕业季:6 款曲线,解决 99% 的 ELISA 数据拟合难题
  3. 苹果手机微信上form表单提交的问题
  4. 利用python自带的包可以建立简单的web服务器
  5. oracle备份慢,诊断Oracle RMAN备份慢的原因
  6. linux中mongo的导出数据,Linux下mongodb安装及数据导入导出教程(示例代码)
  7. java 两个窗口 贴_求助Java窗口菜单如何实现复制粘贴剪切等功能(内附源代码)...
  8. Maven for Eclipse 第二章 ——安装 m2eclipse插件
  9. 运维工程师打怪升级进阶之路 V2.0
  10. php之数据类型自动转换
  11. 铲除浏览器右键菜单中的QQ相关项目(转)
  12. 单片机的多路温度采集系统
  13. DDOS攻击土味解读
  14. SAP中物料采购PO和SA共存情况下的标准价格确定
  15. 精益看板方法从理论到实战 (5)—— 控制在制品数量(上)
  16. 部分库函数的自我实现
  17. 溶剂可及性(一):基本概念
  18. 如何批量将多个 Word 文档快速合并成一个文档
  19. 蜂云软件开发微信crm系统的功能点
  20. 国科大图数据管理与分析课程项目gStore实验报告

热门文章

  1. 特长生模拟——买装备
  2. android手机如何截屏,安卓手机怎么截屏(教你华为手机5种截图技巧)
  3. java金额大小写转换 数字大小写转换
  4. 命令提示符(文件操作基础)
  5. 制作Excel图表背景
  6. win7系统中如何以管理员身份修改hosts文件
  7. 【no-descending-specificity】问题
  8. java如何导出excel_JAVA如何导出EXCEL表格
  9. python输出列表的子列表_python切片(获取一个子列表(数组))详解
  10. unity渲染篇:烘焙模型贴图