zoukankan      html  css  js  c++  java
  • 62、单例模式

    单例模式

    单例模式:程序运行时,让某个类在内存中只有一个对象,即让一个类只能创建一个对象。
    一般分为懒汉式和饿汉式

    饿汉式

    有三步:

      • 构造方法私有化
      • 创建当前类对象
      • 对外提供公共的访问方法将SingletonHungary对象暴露给外部
    package com.sutaoyu.single_test;
    
    public class SingletonHungary {
        //1.构造方法私有化
        private SingletonHungary(){
            
        }
        
        //2.创建当前类对象
        private static SingletonHungary s = new SingletonHungary();
        
        //3.对外提供公共的访问方法将SingletonHungary对象暴露给外部
        public static SingletonHungary getInstance() {
            return s;
        }
    }

    懒汉式

    • 构造方法私有化
    • 创建当前类的引用
    • 对外提供公共的访问方法将SingletonHungary对象暴露给外部
    package com.sutaoyu.single_test;
    
    public class SingletonHungary {
        //1.构造方法私有化
        private SingletonHungary(){
            
        }
        
        //2.创建当前类对象
        private static SingletonHungary s = new SingletonHungary();
        
        //3.对外提供公共的访问方法将SingletonHungary对象暴露给外部
        public static SingletonHungary getInstance() {
            return s;
        }
    }

    单例模式的案例Runtime

    java.lang包下的Runtime类使用了单例模式,使用该类可以执行windows系统里面的一些命令,例如:mspaint(打开画图软件),shutdown(关机)等等。
    下面代码演示了使用Runtime类打开画图软件:

    package com.sutaoyu.volatlt;
    
    import java.io.IOException;
    
    public class VolatileTest01 {
        public static void main(String[] args) throws IOException{
            Runtime rt = Runtime.getRuntime();
            rt.exec("mspaint");
        }
    }
  • 相关阅读:
    Beta 答辩总结
    Beta 冲刺 (7/7)
    Beta 冲刺 (6/7)
    Beta 冲刺 (5/7)
    Beta 冲刺 (4/7)
    Beta 冲刺 (3/7)
    软件产品案例分析(团队)
    概率图模型7:条件随机场(2)
    推荐系统概述3
    概率图模型6:条件随机场(1)
  • 原文地址:https://www.cnblogs.com/zhuifeng-mayi/p/10161050.html
Copyright © 2011-2022 走看看