• 构造函数详解


    什么是构造函数,构造函数是我们使用new关键字实例化对象时调用执行该对象的构造函数。

    构造函数大类分为无参构造函数和有参构造函数,其次是静态和非静态构造函数

     1  public class Test
     2     {
     3         int i;
     4         private char p1;
     5         private char p2;
     6 
     7         static Test()
     8         {
     9 
    10         }
    11         public Test()
    12         {
    13             i = 1;
    14             Console.WriteLine("I am Test 默认构造函数 i={0}", i);
    15         }
    16         public Test(string str)
    17         {
    18             //i = 1;
    19             Console.WriteLine("I am Test 默认构造函数 i={0}", str);
    20         }
    21         public Test(string str, string dt)
    22         {
    23             Console.WriteLine("I am Test 默认构造函数 i={0}", str);
    24             Console.WriteLine("I am Test 默认构造函数 i={0}", dt);
    25         }
    26 
    27         public Test(char p1, char p2)
    28         {
    29             // TODO: Complete member initialization
    30             this.p1 = p1;
    31             this.p2 = p2;
    32             Console.WriteLine("I am Test 默认构造函数 i={0}", p1);
    33             Console.WriteLine("I am Test 默认构造函数 i={0}", p2);
    34         }
    35     }
    36     public class ProgramTest
    37     {
    38         static void Main(string[] args)
    39         {
    40             Test t = new Test('3', '2');
    41             Console.Read();
    42         }
    View Code

    一个类中可以自定义多个构造函数

    其中静态构造函数特殊:

    静态构造函数一个类中只能定义一个,而且最多只能运行一次(因为静态在程序运行时默认就自动创建开辟空间,不需要我们去new他们,也就是实例化

    当类中的静态成员有初始值时,没有声明静态构造函数,那么编译器会自动生成默认的静态构造函数。

    静态构造函数不可以被继承

    非静态构造函数:

    当有多个构造函数时,在实例化的时候根据你提供的参数编译器决定调用哪一个构造函数

    当构造函数是私有的private时  有且只有一个构造函数时   类不能实例化

  • 相关阅读:
    取2个日期间的天数
    C#代码与JAVASCRIPT函数的相互调用
    ASP.NET验证码(3种)
    VS2008自带SQL 2005如何使用
    文本框默认有一个值,然后鼠标点上去那个值就清空
    远程桌面连接会话超时或者被限制改组策略也没用的时候就这么解决
    关于CComboBox的使用,编辑项的文字
    vc 剪切板 unicode
    Linux 防火墙、SELinux 的开启和关闭
    MSSQLSERVER服务不能启动
  • 原文地址:https://www.cnblogs.com/liuhuimh/p/7419990.html
Copyright © 2020-2023  润新知