大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > C#技巧 > 关于c#静态构造函数

关于c#静态构造函数

关键词:静态构造函数  阅读(712) 赞(10)

[摘要]本文是对关于c#静态构造函数的讲解,对学习C#编程技术有所帮助,与大家分享。

在百科上看到C#的新特性静态构造函数,其中提到静态构造函数“不能继承” 今天做了个试验,发现实际上静态构造函数是可以继承的,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 静态构造函数
{
    public class Parent
    {
        protected static int var1;
        static Parent()
        {
            var1 = 100;
        }
    }

    public class Child:Parent
    {
        public int GetVar1()
        {
            return var1;
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(new Child().GetVar1());
            Console.ReadKey();
        }
    }   
}

运行结果显示100 说明虽然是父类的静态构造函数 但是在创建子类实例前这个静态构造函数也被调用过了

另外一种情况是带有static修饰的类,因为同时被定义为sealed,也就是静态类,是不能被继承的,因而也无所谓它的静态构造函数是否能继承了。



相关评论