zoukankan      html  css  js  c++  java
  • java 开发中的23种设计模式

    设计模式是一套被反复使用,多数人知晓,经过分类编目的,代码设计经验的总结。使用设计模式是为了可重用代码,让代码更容易被他人理解。保证代码可靠性。毫无疑问,设计模式于己于他人于系统都是多赢的。设计模式使代码编制真正工程化,设计模式使软件设计的基石,如同大厦的一块块砖石一样。项目中合理的运用模式可以完美的解决很多问题。

    一.设计模式的分类

    总体来说设计模式分为三类:

    创建型模式,共五种:工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式

    结构型模式,共七种:适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式

    行为型模式,共十一种:策略模式,模板方法模式,观察者模式,迭代子模式,责任链模式,备忘录模式,状态模式,访问者模式,中介者模式,解释器模式

    下面开始正文:

    1.工厂方法模式(Factory Method)

    工厂方法模式分为三种:

    1.1普通工厂模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建:

    我们举一个发送邮件和短信的例子

    public interface Sender{

      public void Send();

    }

    其次,创建实现类:(java 中 implements 用于实现接口;extends 用于实现继承)

    public class MailSender implements Sender{

      @Override

      public void Send(){

        System.out.println("this is mailsender");

      }

    }

    public class SmsSender implements Sender{

      public void Send(){

        System.out.println("this is sms sender");

      }

    }

    //最后,建工厂类

    public class SendFactory{

      public Sender produce(String type){

        if("mail".equals(type)){

          return new MailSender();

        }else if("sms".equals(type)){

          return new SmsSender();

        }else{

            System.out.println("请输入正确的类型!");

            return null;

          }

      }

    }

    我们来测试一下:

    public class FactoryTest{

      public static void main(String[] args)

      {

         SendFactory factory=new SendFactory();

         Sender sender=factory.produce("sms");

         sender.Send();

      }

    }

  • 相关阅读:
    css实现京东顶部导航条
    css盒布局-省份选择盘的实现
    css字体的属性
    css行高
    CSS定位(position)
    CSS-clear属性的作用
    2.b统计字符串长度
    rectangle类。java
    mysql 版本问题之sql-mode 导致 sql 语句报错
    根据一个表中同一字段的不同值进行统计!!!
  • 原文地址:https://www.cnblogs.com/csli/p/6865757.html
Copyright © 2011-2022 走看看