zoukankan      html  css  js  c++  java
  • 在商城系统中使用设计模式单例模式之饿汉式

    1.概念:

    单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

    这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。

    2.特点:

    • 1、单例类只能有一个实例。
    • 2、单例类必须自己创建自己的唯一实例。
    • 3、单例类必须给所有其他对象提供这一实例

    3.使用场景:在返回消息给客户端的时候,我们会统一返回的格式

    4.实现

    步骤1.创建一个 ResponseResult类。

    public class ResponseResult{
    
        private static ResponseResult instance = new ResponseResult();
    
        //为了保证只有一个实例   构造方法无做任何操作
        private ResponseResult(){}
    
        public static ResponseResult getInstance(){
            return instance;
        }
    
        //返回给客户端的数据说明
        private String msg;
    
        //如果操作成功,返回的数据
        private Object data;
    
        //返回的编码  0:表示操作成功  1:表示失败
        private int code;
    
        public String getMsg() {
            return msg;
        }
    
        public void setMsg(String msg) {
            this.msg = msg;
        }
    
        public Object getData() {
            return data;
        }
    
        public void setData(Object data) {
            this.data = data;
        }
    
        public int getCode() {
            return code;
        }
    
        public void setCode(int code) {
            this.code = code;
        }
    
    
        @Override
        public String toString() {
            return "ResponseResult{" +
                    "msg='" + msg + '\'' +
                    ", data=" + data +
                    ", code=" + code +
                    '}';
        }
    }

    步骤2从 ResponseResult 类获取唯一的对象。 

    public class Main {
    
        public static void main(String[] args) {
    
            ResponseResult responseResult = ResponseResult.getInstance();
    
            responseResult.setCode(0);
            responseResult.setMsg("操作成功");
            responseResult.setData("这里是存放,请求的数据");
    
            System.out.println(responseResult.toString());
        }
    
    }

    源码:

    https://github.com/littleStone-chan/design-patternsIn-mall/tree/master/single

    在工作中,不能灵活的时候设计模式。希望通过这次的学习,可以加深对设计模式对理解。

    接下来会继续整理出自己在工作对时候可以使用对设计模式,不对望指点。如果文章对您有帮助,github给个start吧。

     
  • 相关阅读:
    写在前面
    "路径的形式不合法"解决方案
    ExtJs学习笔记
    javascript实现ListBox左右全选、单选、多选、全请
    面向对象和面向过程的区别
    Div+CSS布局 网站设计的优点!
    libeio异步I/O库初窥
    等待进程结束
    判断Javascript变量是否为空
    后台创建进程和杀掉进程
  • 原文地址:https://www.cnblogs.com/boychen/p/10624816.html
Copyright © 2011-2022 走看看