zoukankan      html  css  js  c++  java
  • 单例设计模式

    1 类的单例设计模式,就是采取一定的方法保证在整个软件系统中,对某个类只能存在一个对象实例。

    package p1;
    
    //饿汉设计模式
    //由于饿,开始就创建实例
    public class TestSingleton1 {
    
        public static void main(String[] args) {
            Singletion s1 = Singletion.getSingletion();
            Singletion s2 = Singletion.getSingletion();
            System.out.println(s1 == s2);
    
        }
    
    }
    
    class Singletion {
        // 1.私有化构造器,使外部类不能调用此构造器
        private Singletion() {
    
        }
    
        // 2.在该类中创建一个类的实例,私有化该对象,通过公共方法调用
        private static Singletion instance = new Singletion();
    
        // 3.定义一个公共的static方法
        public static Singletion getSingletion() {
            return instance;
        }
    }
    package p1;
    
    //懒汉模式: 可能存在线程安全问题
    //由于懒,先不创建实例,等比较之后,再创建
    public class TestSingleton2 {
    
        public static void main(String[] args) {
            Singletion s1 = Singletion.getSingletion();
            Singletion s2 = Singletion.getSingletion();
            System.out.println(s1 == s2);
        }
    }
    
    class Singleton {
        private Singleton() {
    
        }
    
        private static Singleton instance = null;
    
        public static Singleton getSingleton() {
            if (instance == null) {
                instance = new Singleton();
            }
            return instance;
        }
    }
  • 相关阅读:
    模块化编程
    flex 弹性布局
    作用域与作用域链
    深入解读JavaScript面向对象编程实践
    javascript Null、Undefined 、NaN的联系与区别
    跨域常见解决方案
    Reverse Pairs
    315. Count of Smaller Numbers After Self
    2. Add Two Numbers
    657. Judge Route Circle
  • 原文地址:https://www.cnblogs.com/yjtm53/p/4136269.html
Copyright © 2011-2022 走看看