0
点赞
收藏
分享

微信扫一扫

C#静态构造函数,静态属性器,静态字段

菜头粿子园 2022-03-25 阅读 73
sqlgithubgit

C#静态构造函数,静态属性器,静态字段

using System;

namespace C_
{

        class Person
    {

        //   静态变量
        private static string name;

        //静态属性
       public static string Name
        {

            get
            {
                return name;
            }
            set
            {  //get和set方法相比构造函数可以进行访问过滤
                if (value.Length > 5)
                {
                    System.Console.WriteLine("{0} is too long ,pass five char", value);
             
                }
                name = value;
            }
        }


        //静态构造函数, 可以在静态构造函数里使用静态属性
        static Person(){
            //静态构造函数用于初始化静态成员变量
            Person.Name="xiao";
            System.Console.WriteLine("静态构造调用 ,name:{0}",Person.name);
        }

        #region 静态构造函数的特点
/* 静态构造函数既没有访问修饰符,也没有参数。
在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类。
无法直接调用静态构造函数。
在程序中,用户无法控制何时执行静态构造函数。
静态构造函数只会执行一次
*/

#endregion
    }


    class Program
    {
        static void Main(string[] args)
        {

            
//静态构造函数在创建类的实例或者引入静态成员时调用

Person person=new Person();
// 静态构造调用 ,name:xiao

Person.Name="libai";

Console.WriteLine(Person.Name);//静态成员被覆盖了

        }
    }
   
}

举报

相关推荐

0 条评论