zoukankan      html  css  js  c++  java
  • java设计模式-简单工厂模式

      第一次好好的看设计模式,可能有不对的地方,大佬们可以下面指出,感谢!

      ----------- 分割线 ----------

      

    电话父类,主要行为有打电话,上网,报告手机型号;

    子类有一系列手机,分别实现接口Phone;

    工厂类,主要是创造手机;

    接下来是执行类去调用工厂类创建手机,执行手机行为操作;

    控制台打印;

    换一种手机:

    需要什么手机就去工厂里面拿什么手机,工厂只负责创建手机职责,如果机型不够了,去创建Phone的子类就行,然后工厂里面添加子类类型即可,简单工厂模式实现。但是,这样是不是特别麻烦?每次多一个子类,是不是都需要去操作工厂里面的switch呢?有没有简单点的方法呢?答案是当然有啦,别忘了我们java中强大的反射机制!好了,下面对工厂进行改造:

    然后执行类执行工厂:

    这样子的话,要什么手机,我们把手机的类名传入工厂即可。但是这样子,如果有很多手机,这么多类名是不是也有点麻烦呢?可以把类名在包装一下?这时候新增一个枚举类去管理这些手机类型解决:

    简单工厂差不多到这啦,摘自大话设计模式,以下是我个人理解:

  • 相关阅读:
    Iaas/paas/saas 三种模式分别都是做什么?
    sender e
    xshell
    JDK 和JRE区别
    mongodb高级聚合查询
    MongoDB 官方文档中的 aggregate 例子当中的 $sum: 1 , 这里的 1 起什么作用?
    MySQL 当记录不存在时插入,当记录存在时更新
    html中跳转方法(含设定时间)
    处理分页
    Js弹出层,弹出框代码
  • 原文地址:https://www.cnblogs.com/ghsy/p/11044268.html
Copyright © 2011-2022 走看看