zoukankan      html  css  js  c++  java
  • 一、Java笔记之-懒汉模式与饿汉模式

    • 一、饿汉模式,上来就先new对象,表示很饥渴:
    package com.jerry.java;
    
    public class Singleton1 {
    //1.先声明一个私有化构造器,防止直接创建该对象
    private Singleton1() {}
    
    //2.直接下把对象创建好,使用静态变量
    private static Singleton1 instance1 = new Singleton1();
    
    //3.提供公共的静态方法,返回类的对象
    public static Singleton1 getInstance1() {
    return instance1;
    }
    }
    

      

      

    • 二、懒汉模式,不着急用,我就不着急造对象:
    package com.jerry.java;
    
    //懒汉模式
    public class Singleton2 {
    	private  Singleton2() {}
    	
    	//先把对象放着
    	private static Singleton2 singleton2  = null;
    	
    	// 有需要的时候,再去创建
    	private static Singleton2 getInstance() {
    		if (singleton2 == null) {
    			return new Singleton2();
    		}
    		
    		return singleton2;
    	}
    }
    

      

    懒汉式与饿汉式的优缺点:

    懒汉式,线程不安全,因为存在多线程资源竞争问题。

    懒汉式,好处是延迟对象的创建。

    饿汉式,线程安全,因为静态对象在编译时只会创建一次。

  • 相关阅读:
    mysql单个表内去重多个重复的字段
    scrapy xpath有空格处理
    有道选择语言性翻译
    豆瓣源
    scrapy 编码
    西祠代理获取
    有道翻译
    远程连接服务器for Linux
    ECshop通过文章分类的ID实现不同模板
    创建WordPress管理员账号
  • 原文地址:https://www.cnblogs.com/vpersie2008/p/12722230.html
Copyright © 2011-2022 走看看