首页 > 代码库 > 构造函数初始化语句!!!
构造函数初始化语句!!!
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace nange_1{ class A { readonly int Amyint_1 = 3; readonly int Amyint_2 = 4; public string name; public int age; private A() //私有构造函数执行其他构造 { //函数共用的初始化 Amyint_1 = 5; Amyint_2 = 6; Console.WriteLine("调用无参的构造函数{0} {1}", Amyint_1, Amyint_2); } public A(string str,int k):this() { name = str; age =k; Console.WriteLine("调用有一个参数的构造函数 name:{0} {1}", name,age); } } class Program { static void Main(string[] args) { A objB = new A("江涛",23); Console.ReadLine(); } }}
/*这种语法很有用的另一种情况是,一个类有好几个构造函数,并且他们都需要在对象构造的过程开始时执行一些公共的代码。对于这种情况,可以把公共代码提取出来作为一个构造函数,被其他的所有构造函数作为构造函数初始化语句使用。减少了重复的代码!!你可能会觉得还可以声明一个方法来进行这些公共的初始化,让所有的构造函数调用来调用这个方法,由于种种原因这不是一个好的办法,首先编译器知道方法是一个构造函数后会进行一些优化。其次,有时候一些事情必须在构造函数中执行,在其他一些地方则不行比如readonly字段!*/
构造函数初始化语句!!!
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。