首页 > 代码库 > 类的构造函数(器)constructor
类的构造函数(器)constructor
九 类的构造函数 constructor
默认构造函数
每个类在建立和实例化为对象的时候都会首先调用默认的构造函数。
如图:
类中的变量,数字类型的默认赋值为0,字符类型的默认赋值为Null。
要与一般变量的初始值区分开:如下(编译不通过)
构造函数的重载和继承
using System ;class A{ public int i; public string s; public A() //修改默认的构造函数 { i=100; s="石头"; } public A(int i):this() //重载构造函数并继承A(); { this.i=i; } public A(string s):this()//重载构造函数并继承A(); { this.s=s; } public A(int i,string s):this()//重载构造函数并继承A(); { this.i=i; this.s=s; }}class Test{ static void Main() { A a=new A (); //调用第一个构造函数 Console.WriteLine("第一个构造器"); Console.WriteLine(a.i); Console.WriteLine(a.s); A a1=new A (1); //调用第二个构造函数 Console.WriteLine("第二个构造器"); Console.WriteLine(a1.i); Console.WriteLine(a1.s); A a2=new A ("我是"); //调用第三个构造函数 Console.WriteLine("第三个构造器"); Console.WriteLine(a2.i); Console.WriteLine(a2.s); A a3=new A (2,"中国人"); //调用第四个构造函数 Console.WriteLine("第四个构造器"); Console.WriteLine(a3.i); Console.WriteLine(a3.s); }}
运行结果:
B类继承A类,调用的始终是A的默认的构造函数,注意:当A中只有带参数的构造函数的时候,编译不通过。
静态构造器
如下:静态构造器的特点
类的构造函数(器)constructor
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。