• C# 静态构造函数和实例构造函数


      字段可以分为静态字段和实例字段,同样构造函数也可以分为静态构造函数和实例构造函数。

      @1、实例构造函数:

      #1:若构造函数有修饰符extern,则表示该构造函数为外部构造函数,外部构造函数不提供任何实际的实现,函数体中仅由一个分号组成。一般情况下,构造函数总是public类型,若为private类型,表明类不能被实例化。

      #2:实例构造函数可以重载。

      #3::base([参数列表])表明调用基类中相应的构造函数。

      #4::this([参数列表])表明调用该类本身所声明的其他构造函数。

      #5:构造函数中既可以对静态字段进行赋值,也可以对非静态字段进行初始化。

      #6:实例构造函数不能被继承。若一个类中没有声明任何实例构造函数,系统会自动提供一个不带参数的默认构造函数。

      @2、静态构造函数:

      #1:静态构造函数主要用于初始化一些静态的变量。静态构造函数只会执行一次,而且是在创建此类的第一个实例 或 引用任何静态成员(包括静态方法)之前,由.NET自动调用。

      #2:静态构造函数没有访问修饰符, 因为是由.NET自动调用的。

      #3:静态构造函数没有参数。

      #4:一个类中只能有一个静态构造函数。

      #5:静态构造函数只能运行一次。

      #6:静态构造函数不能被继承。

      #7:若没有写静态构造函数,而类中包含有初始值设定的静态成员,则编译器会自动生成默认的构造函数。

      #8:静态构造函数与无参的实例构造函数不冲突,可同时出现。

    参考文献:吴晓艳《C#语言程序设计》

  • 相关阅读:
    Google Chrome 自定义协议(PROTOCOL)问题的处理
    C# 6.0/7.0 的新特性
    MySQL 5.7.18 压缩包版配置记录
    nginx.conf文件内容详解
    博客添加动态动漫妹子
    TypeScript 3.8beta版
    微信浏览器H5开发常见的坑
    Babel7知识梳理
    雅虎前端优化35条规则
    webpack
  • 原文地址:https://www.cnblogs.com/lxw0109/p/C_Sharp_Constructors.html
Copyright © 2020-2023  润新知