zoukankan      html  css  js  c++  java
  • 【Java基础】单例模式

        单例模式:保证整个项目运作期间某一个对象有且只有一个。

        主要有:1,饿汉式;2,懒汉式。

     1 class Singleton1//饿汉式
     2 {
     3     private Singleton1(){}//先把构造方法私有化,不允许外界创建对象
     4     private static final Singleton1 instance=new Singleton1();
     5     /*饿汉式就是声明的时候就赋值了
     6     缺点为加载的时候就需要开辟空间,需要损耗性能,加载慢。
     7     */
     8     public static Singleton1 getInstance()
     9     {
    10         return instance;
    11     }
    12 }
    13 class Singleton2//懒汉式
    14 {
    15     private Singleton2(){}
    16     private static Singleton2 instance;//=null
    17     /*懒汉式就是声明的时候没有赋值
    18     缺点为线程不安全
    19     */
    20     public static Singleton2 getInstance()
    21     {
    22         if(instance==null)
    23             instance=new Singleton2();
    24         return instance;
    25     }
    26 }
    27 class SingletonDemo 
    28 {
    29     public static void main(String[] args) 
    30     {
    31         Singleton1 s1=Singleton1.getInstance();
    32         Singleton1 s2=Singleton1.getInstance();
    33         System.out.println(s1==s2);
    34 
    35         Singleton2 s3=Singleton2.getInstance();
    36         Singleton2 s4=Singleton2.getInstance();
    37         System.out.println(s3==s4);
    38     }
    39 }

        本人小菜鸟一枚,以上为网上自学心得总结,如有错误敬请指出。新手童鞋多多交流,大神们多多指点。祝大家生活愉快。

  • 相关阅读:
    合并排序二
    合并排序
    理解Windows消息循环机制
    直接插入排序
    关于typedef的用法总结
    迭代器的抽象
    C++基础--malloc和new的区别
    C++基础--sizeof和strlen的区别
    C++ VS编译问题--LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
    SSL--Windows下生成OpenSSL自签证书
  • 原文地址:https://www.cnblogs.com/zhubingqi/p/4081064.html
Copyright © 2011-2022 走看看