美文网首页
C# 单例的实现

C# 单例的实现

作者: 游戏创作者 | 来源:发表于2020-10-16 18:54 被阅读0次

1. 静态单例

using System;
using System.Collections.Generic;

namespace InstanceTest
{
    public class DogManager {
        public static readonly DogManager Instance = new DogManager();

        private DogManager() { }

        public void Eat() {
            Console.WriteLine("吃");
        }
    }
     
    class Program
    {
        static void Main(string[] args)
        {
            DogManager.Instance.Eat();
        }
    }
}

2.延时单例

using System;
using System.Collections.Generic;

namespace InstanceTest
{
    public class DogManager {
        private static DogManager _instance = null;

        private DogManager() { }

        public static DogManager Insance() {
            if (_instance == null) {
                _instance = new DogManager();
            }
            return _instance;
        }

        public void Eat() {
            Console.WriteLine("吃");
        }
    }
     
    class Program
    {
        static void Main(string[] args)
        {
            DogManager.Insance().Eat();
        }
    }
}

注意把构造函数写成private,让他不能通过new获得。

相关文章

  • C# 单例的实现

    1. 静态单例 2.延时单例 注意把构造函数写成private,让他不能通过new获得。

  • C#实现设计模式 —— 单例模式

    本文为转载,原文:C#实现设计模式 —— 单例模式 介绍 作为对象的创建模式,单例模式确保某一个类只有一个实例,而...

  • iOS 单例

    单例模式实现不能使用继承 定义单例实现 简写 定义单例实现宏

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • iOS 单例模式 - 单例对象销毁【@synchronized】

    单例对象的创建方式 单例.h 文件的实现 单例.m 文件的实现 单例对象的销毁【@synchronized创建方式...

  • iOS 单例模式 - 单例对象销毁【GCD】

    单例对象的创建方式 单例.h 文件的实现 单例的.m 文件的实现 单例对象的销毁【GCD创建的方式】 使用单例对象...

  • python面试题-2018.1.30

    问题:如何实现单例模式? 通过new方法来实现单例模式。 变体: 通过装饰器来实现单例模式 通过元类来创建单例模式...

  • 单例模式

    一、实现单例模式 或者 二、透明的单例模式 三、用代理实现单例模式 四、JavaScript中的单例模式 在Jav...

  • Unity技术博客 - 单例的使用

    Unity版本: 4.6 使用语言: C# 写在前面 实现功能: 这里为大家介绍Unity中常见的四种单例写法:...

  • 单例模式

    饿汉模式: 懒汉模式: Double CheckLock(DCL)实现单例 静态内部类实现单例 枚举单例 使用容器...

网友评论

      本文标题:C# 单例的实现

      本文链接:https://www.haomeiwen.com/subject/cshtmktx.html