C# 静态构造函数学习

news/2024/5/19 2:13:45 标签: 构造函数, 静态构造函数

静态构造函数用于初始化类中的静态数据或执行仅需一次的特定操作,静态构造函数将在创建第一个实例或引用类中的静态成员之前自动调用。

静态构造函数具有以下特点:
    静态构造函数不使用访问权限修饰符修饰或不具有参数;
    类或结构体中只能具有一个静态构造函数
    静态构造函数不能继承或重载;
    静态构造函数不能直接调用,仅可以由公共语言运行时调用;
    用户无法控制程序中静态构造函数的执行时间;
    在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数以初始类化;
    静态构造函数会在实例构造函数之前运行;

新建一个test.cs文件;

using System;

class A
{
   public static int n1 = 0;

   A()
   {
        n1 = 10;
    }

    static A()
    {
        n1 = 999;
    }

    static void Main(string[] args)
    {
        Console.WriteLine("n1 = {0}",   n1);
        A a1 = new A();
        Console.WriteLine("n1 = {0}",   n1);
        Console.Read();
    }
}

放到.net framework目录下;然后构建运行;

一开始n1是等于0,此时没有输出;然后静态构造函数在实例构造函数之前被调用,n1被赋值999;先输出n1=999;然后执行实例构造函数,n1被赋值10,输出n1=10; 


http://www.niftyadmin.cn/n/462434.html

相关文章

HCI-1

3.1 定义 就本文档而言,适用以下术语和定义: 嵌入式安全元件主机:在不可移动安全元件中实现的主机 门:主机内部运行的服务的入口点 主机:运行一项或多项服务的逻辑实体 主机控制器:还负责管理主机网络的…

QML Canvas 元素(绘制文本)

关于 QML Canvas,我们已经学习了如何绘制基本图形、应用样式和颜色、绘制图像等,现在来看一下如何在 Canvas 中绘制文本。 Canvas 提供了两种方式来渲染文本: fillText(text, x, y) 在指定的 (x,y) 位置填充指定的文本 strokeText(text, x, y) 在指定的 (x,y) 位置绘制文本…

【kubernetes】部署kube-apiserver与kubectl

前言:二进制部署kubernetes集群在企业应用中扮演着非常重要的角色。无论是集群升级,还是证书设置有效期都非常方便,也是从事云原生相关工作从入门到精通不得不迈过的坎。通过本系列文章,你将从虚拟机准备开始,到使用二进制方式从零到一搭建起安全稳定的高可用kubernetes集…

JavaScript 手写代码 第三期

文章目录 1. 为什么要手写代码?2. 手写代码2.1 函数柯里化2.1.1 基本使用2.1.2 手写实现 2.2 sleep函数2.2.1 简单使用2.2.2 手写实现 2.3 Object.assign() 方法2.3.1 基本使用2.3.2 具体示例2.3.3 具体思路2.3.4 具体实现 1. 为什么要手写代码? 我们在…

ChatGPT底层架构Transformer技术及源码实现(三)

ChatGPT底层架构Transformer技术及源码实现(三) 贝叶斯Bayesian Transformer数学推导论证过程全生命周期详解及底层神经网络物理机制剖析 Gavin大咖微信:NLP_Matrix_Space 从数学的角度来讲,线性转换 其中函数g联合了所有头的操作结果,每个头的产生是采用一个f_att的…

校园视频AI分析预警系统 TesnorFlow

校园视频AI分析预警系统通过分布式TensorFlow模型训练,校园视频AI分析预警系统对学生的行为进行实时监测,当系统检测到学生出现打架、翻墙、倒地、抽烟等异常行为时,校园视频AI分析预警系统将自动发出警报提示相关人员及时采取措施。深度学习…

ADC0808/ADC0809引脚图及功能和工作原理介绍

ADC0808芯片有28条引脚,采用双列直插式封装。如图所示: . . . 各引脚功能如下: 1-5和26-28(IN0-IN7):8路模拟量输入端。 8、14、15和17-21:8位数字量输出端。 22(ALE&#xff09…

【mysql】1731. 每位经理的下属员工数量

题目: Table: Employees --------------------- | Column Name | Type | --------------------- | employee_id | int | | name | varchar | | reports_to | int | | age | int | --------------------- employee_id 是这个表的主键. 该表包含员工以及需要听取他们…