C#对象初始值设定项

痴心易碎 提交于 2020-01-08 20:48:59

该语法能够在调用构造函数的同时设置公有的字段或者属性,可减少要提供的重载构造函数。
对象初始值设定项可同时用于实例化和初始化对象,但前提是自断和属性间没有依存关系。

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Contact
    {
        public string firstName;
        public string lastName;
        public DateTime dateOfBirth;

        public override string ToString()
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendFormat("Name: {0} {1}\r\n", this.firstName, this.lastName);
            sb.AppendFormat("Date of Birth: {0}\r\n", this.dateOfBirth);
            return sb.ToString();
        }
    }

    class Program    
    {
        static void Main(string[] args)
        {
            //对象初始值设定项
            //两种情况下,结果相同
            Contact c1 = new Contact();
            c1.firstName = "zhanzhan";
            c1.lastName = "Lisa";
            c1.dateOfBirth = new DateTime(1991, 10, 5);
            Console.WriteLine(c1.ToString());

            Contact c2=new Contact
            {
                firstName="zhanzhan",
                lastName="Lisa",
                dateOfBirth=new DateTime(1991,10,5)
            };
            Console.WriteLine(c2.ToString());
            Console.Read();
        }
    }
  }

输出示例:
输出示例

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!