玉祥平台客服-15087858732

标题: Asp.Net 设计模式 之 单例模式 [打印本页]

作者: Adam丶鱼    时间: 2020-5-14 18:12
标题: Asp.Net 设计模式 之 单例模式
一、设计目的:让项目中只显示一个实例对象
二、设计步骤:
三、项目相关名词或知识点解释
四、相关源码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SingleCaseModel00
{
    /// <summary>
    /// 1.创建这么一个类
    /// </summary>
    class SingleCase
    {
        //2.构建类类型静态变量
        //此处类类型:如果当前类为SingleCase,则次静态变量类型也要为SingleCase类型,
        //即在此处定义的静态变量的类型要和这个当前类的类型相同
        //定义单例实例变量时,尽量都用instance(实例)来指代,方便阅读
        //静态变量在内存中只有一个,只占一份儿
        public static SingleCase instance = null;
        //10.定义一个字段,用来进行测试
        public string name;
        //3.定义返回值类为单例类型的静态方法
        public static SingleCase getInstance(string n)
        {
            //4.判断静态变量instance是否为空
            if (instance == null)
            {
                //5.如果为空,就创建实例
                instance = new SingleCase();
                //6.给单例类中的字段进行赋值
                instance.name = n;
            }
            //7.返回此变量
            return instance;
        }
        //8.如果这个类中还有其他的字段,那么直接在下面写出来即可
        //如下:
        //public string Name;
        //public int Age;
    }
    class Program
    {
        static void Main(string[] args)
        {
            //9.调用上述单例类中方法,测试单例类
            SingleCase s1 = SingleCase.getInstance("我是第一次传过来的参数");
            SingleCase s2 = SingleCase.getInstance("我是第二次传过来的参数");
            Console.WriteLine(s1.name);
            Console.WriteLine(s2.name);
            Console.ReadKey();
        }
    }
}


作者: Adam丶鱼    时间: 2020-5-14 18:13

作者: 张兴康    时间: 2020-5-15 17:10

作者: 张兴康    时间: 2020-5-15 17:10





欢迎光临 玉祥平台客服-15087858732 (http://bbs.delit.cn/) Powered by Discuz! X3.2