标签:设计 one 安全 view open 空间 style 对象 饿汉
注:和Python利用Python本身模块实现单例模式一样(无论用不用,直接创建一个实例)
创建对象实例的时候直接实例化【空间换时间,在加载类的时候就创建了实例,速度快,空间大】
代码:
1 package com.swpu.single; 2 3 public class SingletonOne { 4 //创建类中私有构造(在其他地方不能对类实列化,无法访问私有构造) 5 private SingletonOne(){ 6 7 } 8 //创建该类的私有静态实例 9 private static SingletonOne instance=new SingletonOne(); 10 //创建公有静态方法返回静态实例 11 public static SingletonOne getInstance(){ 12 return instance; 13 } 14 }
注:和Python中利用装饰器或者重写__new__方法,使用元类相似(需要用的时候在实例化【线程不安全】)
类内实例对象创建时并不直接初始化,知道第一次调用get方法时才完成初始化操作【时间换空间】
3.饿汉式和懒汉式比较:
标签:设计 one 安全 view open 空间 style 对象 饿汉
原文地址:https://www.cnblogs.com/lyq-biu/p/10695448.html