zoukankan      html  css  js  c++  java
  • java 单例模式-饿懒汉模式

       单例-饿汉模式

    1、将构造方法私有化,不允许外部直接创建对象 private Singleton(){}
    2、自己在类的内部创建一个唯一实例 private static Singleton instance = new Singleton();
    3、提供一个用于获取实例的方法 public static Singleton getInstance(){return instance};

    public class Singleton{ 
    
    private static Singleton instance=new Singleton(); 
    
    private Singleton(){}
    public staitc Singleto getInstance(){   return instance; } }

    单例--懒汉模式

    1.构造函数私有化

    2.创建类的唯一实例静态成员变量(为null)

    3.创建获取单一实例的静态成员方法 区别在于实例本身产生的时间(类加载时还是类使用时)

    复制代码
    public class Singleton{ 
    private Singleton(){}
    private static Singleton instance; 
    public static Singleton getInstance(){ 
      if(instance==null){ 
        return new Singleton();
      } else {
        return instance;
       }
    }
    复制代码

    区别:
    饿汉式:声明的同时直接实例化。 特点:加载类时比较慢,但运行时获取对象的速度比较快,线程安全。
    懒汉式:声明的时候不实例化。 特点:加载类时比较快,但运行时获取对象的速度比较慢,线程不安全。

  • 相关阅读:
    CSS3媒体查询总结
    关于前端学习规划
    开发技术版本
    Visual Studio 问题汇总
    asp.net web core 开发问题汇总(1)
    asp.net web core 部署问题汇总
    报表平台需求文档(V0.0.0.1)
    Git使用说明
    派生类
    cin、cout的重载
  • 原文地址:https://www.cnblogs.com/huangyin/p/5306478.html
Copyright © 2011-2022 走看看