• 单例模式


    创建型模式:主要聚焦于对象是如何创建的。

    单例模式,在任何情况下,只允许有一个对象的实例。

    1.       单线程下的单例模式:

    public class SingletonTest

        {

            private static SingletonTest instance;

            private SingletonTest() { }

            public static SingletonTest Instance

            {

                get

                {

                    if (instance == null)

                    {

                        instance = new SingletonTest();

                    }

                    return instance;

                }

            }

    }

    2.       多线程情况下的单例模式:

    public class SingleTestThread

        {

            private static volatile SingleTestThread instance;

            private static object lockHelper = new object();

            private SingleTestThread() { }

            public static SingleTestThread Instance

            {

                get

                {

                    if (instance == null)

                    {

                        lock (lockHelper)

                        {

                            if (instance == null)

                            {

                                instance = new SingleTestThread();

                            }

                        }

                    }

                    return instance;

                }

            }

        }

    3.任何情况下都可以用,但是没办法传参:

    public class SingleSimple

        {

            private SingleSimple() { }

            public static readonly SingleSimple Instance = new SingleSimple();

        }

  • 相关阅读:
    关于json中对象的删除
    JDBC操作数据库 封装好的工具类
    json <--->List集合,实体类 之间的相互转换
    java--->>发送邮件
    登陆的过滤器
    Hadoop + Spark 在CentOS下的伪分布式部署
    CentOS和ubuntu修改hostname的区别
    ubuntu 用户管理 adduser vs useradd
    hadoop2.6.1源码编译64位
    MySQL Binlog详解
  • 原文地址:https://www.cnblogs.com/hometown/p/3204225.html
Copyright © 2020-2023  润新知