单例模式【C#】

这篇具有很好参考价值的文章主要介绍了单例模式【C#】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

只能生一个儿子。

文件操作只能一个单例去操作。

1static:

static的特点是,不需要new就能使用。即使派生了,也是使用静态的对象。

public class SingleObject {
 
   //创建 SingleObject 的一个对象
   private static SingleObject instance = new SingleObject();
 
   //让构造函数为 private,这样该类就不会被实例化
   private SingleObject(){}
 
   //获取唯一可用的对象
   public static SingleObject getInstance(){
      return instance;
   }
 
   public void showMessage(){
      System.out.println("Hello World!");
   }
}

静态方法,需要用类型去调用他。文章来源地址https://www.toymoban.com/news/detail-755724.html

public class SingletonPatternDemo {
   public static void main(String[] args) {
 
      //不合法的构造函数
      //编译时错误:构造函数 SingleObject() 是不可见的
      //SingleObject object = new SingleObject();
 
      //获取唯一可用的对象
      SingleObject object = SingleObject.getInstance();
 
      //显示消息
      object.showMessage();
   }
}

2多线程:

 class Singleton
    {
        private static volatile Singleton instance = null;
        private static object lockHelper = new object();
        private Singleton() { }
        public static Singleton getSingleton
        {
            get
            {
                if (instance == null)
                {
                    lock (lockHelper)
                    {
                        if (instance == null)
                        {
                            instance = new Singleton();
                        }
                    }
                }
                return instance;
            }
        }
        
        public void showMessage()
        {
      		 Console.WriteLine("Test");      
        }  

到了这里,关于单例模式【C#】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • c#设计模式-创建型模式 之 单例模式

    目录 前言: 优点: 缺点: 饿汉式(静态变量方式) 懒汉式(线程不安全) 懒汉式(双重检查锁定) 推荐方式Lazy 总结: 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供 了一种访问其唯一的对象的方式,可以直接访问,

    2024年02月13日
    浏览(29)
  • 【C#】五种单例模式详解

    饿汉模式、懒汉模式、双重锁懒汉模式、静态内部类模式、枚举模式。 public class SingleTon1 { private static SingleTon1 instance = new SingleTon1(); } 饿汉式,名字就能看出来,很饿,所以实例在初始化的时候就已经建好了。优点是没有线程安全的问题,缺点是浪费内存空间。 public class S

    2024年02月16日
    浏览(43)
  • 【C# 基础精讲】C# 开发环境搭建(Visual Studio等)

    安装C#开发环境是开始学习和使用C#编程的第一步。目前,最常用的C#开发环境是Microsoft Visual Studio,它是一套强大的集成开发环境(IDE),提供了丰富的工具和功能,使开发C#应用程序变得更加便捷。以下是安装Visual Studio的简单步骤: 步骤1:下载Visual Studio 访问Microsoft官方网

    2024年02月14日
    浏览(33)
  • 【C#】并行编程实战:使用 Visual Studio 调试任务

            并行编程可以提高应用程序的性能,但是调试起来会更困难,这一点在之前的章节中我们已经有了很直观的感受。对于程序而言,保证程序的正确性和保证性能同样重要。         本章将介绍可以在 Visual Studio 中的调试工具(包括 Thread 窗口、Tasks 窗口和 Con

    2024年02月15日
    浏览(33)
  • 利用Visual Studio新建一个C# Web项目

    首先就是要下载Visual Studio,具体可以登录官网查看下载教程。 首次打开Visual Studio,就会显示新建的页面,若是使用过的则根据以下操作进行:  以下界面则与新使用的新建界面一致:选择 ASP.NET Web ,点击下一步 填写项目名称,选择项目存放的位置,选择框架,点击创建  

    2023年04月08日
    浏览(77)
  • Singleton 单例模式简介与 C# 示例【创建型】【设计模式来了】

    一句话解释:   单一的类,只能自己来创建唯一的一个对象。 单例模式(Singleton Pattern)是日常开发中最简单的设计模式之一。这种类型的设计模式属于 创建型模式 ,它提供了一种创建对象的最佳方式。 这种模式涉及到一个 单一的类 ,该类负责 创建自己的对象 ,同时

    2024年02月06日
    浏览(29)
  • C# 客户端程序 Visual Studio 远程调试方法

    传统桌面客户端的远程调试相比 UWP , ASP 等项目来说,配置比较麻烦,因为它是非部署的应用程序,原理是复制编译的文件到远程计算机,通过网络来连接和 VS 的通信,本文主要讲述 WPF , WinForm 应用程序的远程调试。 下载适合 Visual Studio 版本的最新远程工具。 最新的远程工

    2024年02月08日
    浏览(41)
  • [C# IDE]-安装 Visual Studio 2012 旗舰中文版以及编译 C# 程序

    ##################################################  目录 VS 2012 ULT chs 安装以及 C# 环境 VS 2012 简介 VS 2012 安装 关于卸载 VS2012 编译运行 C# 程序 VS 2012 界面布局 新建项目 编写代码 生成可执行文件 运行程序 编译运行快捷键 C# 应用程序是如何组织的? 分享 VS ###################################

    2024年02月08日
    浏览(33)
  • Visual Studio C# WinForm开发入门(3):各种控件介绍

    窗口就是打开程序我们所面对的一个面板,里面可以添加各种控件,如下图所示,我们可以在属性栏设置其标题名称、图标、大小等。 双击标题框,会生成Load函数,也可以到事件里面去找 Load函数是窗口生成后需要执行的事件函数。 可以在里面加一些初始化函数。 (1)Na

    2024年02月09日
    浏览(40)
  • 使用Microsoft Visual Studio编写C#上位机(串口助手)

    最近跟着刘工写了一套用于单片机与电脑通信的串口助手,此处将自己手敲的代码记录下来,供大家一起学习交流。 一、程序界面   程序界面 程序界面说明    二、代码(Form1.cs)  三、备注 此处在Form1的属性中,将AutoSize设为True,AutoScroll设为True,AutoScaleMode设为Font,以应

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包