zoukankan      html  css  js  c++  java
  • 构造函数详解

    什么是构造函数,构造函数是我们使用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时  有且只有一个构造函数时   类不能实例化

  • 相关阅读:
    python_ 学习笔记(hello world)
    python_ 学习笔记(运算符)
    MySQL-联合查询
    MySQL-date和datetime
    python_ 学习笔记(基本数据类型)
    python_ 学习笔记(基础语法)
    Visaul Studio 常用快捷键的动画演示
    IIS日志-网站运维的好帮手
    浅谈反射机制
    SQL Server 数据库优化文章
  • 原文地址:https://www.cnblogs.com/liuhuimh/p/7419990.html
Copyright © 2011-2022 走看看