`
txf2004
  • 浏览: 7041043 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C# 3.0--对象初始化语法

阅读更多

可以不必为了给属性赋值而写很多的构造函数重载了。节约了代码量。

注:Test本身的构造函数会被执行,即Console.WriteLine("Test constructor");

using System;

using System.Collections;

using System.Linq;

using System.Text;

using System.Collections.Generic;

using System.Runtime.Serialization;

using System.Text.RegularExpressions;



namespace TestCS

{

    public class Test

    {

        public int X;

        public int Y;



        public Test2 t;



        public Test()

        {

            Console.WriteLine("Test constructor");

        }

        public override string ToString()

        {

            return X.ToString() + "," + Y.ToString() + "," + t.ToString();

        }

    }



    public class Test2

    {

        public int Z;



        public override string ToString()

        {

            return "In Test2--"+Z.ToString();

        }

    }





    public class Progarm

    {

        public static void Main(string[] args)

        {

            Test t = new Test() { X = 1, Y = 2, t = new Test2() { Z = 3 } };

            Console.WriteLine(t.ToString());

        }



    }





  

}

分享到:
评论

相关推荐

    C#3.0一些新语法

    C# 3.0 的发布为开发者带来了许多便利的新特性,如自动实现的属性、对象初始化器和集合初始化器等。这些特性极大地简化了代码编写过程,并提高了代码的可读性和可维护性。通过本文的介绍,希望读者能够更好地理解...

    C#3.0新语法总结

    LINQ是C# 3.0引入的重要特性,提供了统一的查询语法,支持查询对象、XML和数据库等。它包含`LINQ to Objects`(用于查询内存中的对象集合)、`LINQ to XML`(用于XML数据的查询)和`LINQ to SQL`(用于数据库查询)...

    -----------C#3.0设计模式-------

    在C# 3.0中,可以使用`static`关键字和私有构造函数来实现线程安全的单例,或者利用`Lazy<T>`类来延迟初始化。 3. 建造者模式:建造者模式将复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。C# ...

    C# 3.0 完全参考手册

    6. **对象和集合初始化器**:C# 3.0允许在声明时初始化对象的字段或集合,使得代码更简洁。如`var person = new Person { Name = "John", Age = 30 };`。 7. **匿名方法和事件**:匿名方法可以用于简化事件处理程序...

    C# 3.0 入门系列

    这些特性允许我们在创建对象时同时设置其属性值,或者初始化集合,使得代码更加整洁,例如: ``` var student = new Student { Name = "张三", Age = 20 }; var list = new List<int> { 1, 2, 3 }; ``` 6. **...

    C#3.0本质论

    C#3.0引入了对象初始化器,使得创建和初始化类实例变得更加简洁和直观。例如: ```csharp var person = new Person { Name = "张三", Age = 25 }; ``` 这种语法可以显著减少构造函数和初始化代码的复杂性,尤其...

    C#3.0完全自学宝典(C#加入了许多新的特性)

    5. **对象和集合初始器**:这些特性允许开发者在声明变量时同时初始化它们,使得代码更易读,减少错误。 6. **查询表达式(LINQ)**:语言集成查询是C# 3.0的一大亮点,提供了对数据库、XML、数组等数据源进行查询...

    Programing C# 3.0(5th edition)

    var关键字允许我们声明变量而不指定具体类型,编译器会根据初始化值自动推断类型。这一特性提高了代码的可读性,减少了类型冗余。 除此之外,本书还会涵盖C#的基础语法、面向对象编程概念(如封装、继承和多态)、...

    C# 3.0 语言定义文档

    在对象初始化方面,C# 3.0引入了对象初始器和集合初始器,使得创建和初始化对象变得更加简洁。对象初始器允许在类声明中直接初始化成员,而集合初始器则可以方便地初始化集合类型的实例。 在属性支持上,C# 3.0引入...

    C#3.0本质论-卷一:C#基础

    2. **对象初始化器(Object Initializers)** - 允许在创建对象时直接初始化其属性。 - 示例代码: ```csharp Person person = new Person { Name = "Tom", Age = 25 }; ``` 3. **匿名类型(Anonymous Types)** ...

    C#3.0规范 XML文档标准 基本语法

    在深入探讨C#3.0规范中的XML文档标准与基本语法之前,我们首先需要理解C#3.0版本的重要性和其引入的新特性,以及XML文档在C#编程中的作用。 ### C#3.0规范概览 C#3.0是在2007年随.NET Framework 3.5一同发布的,它...

    C#3.0规范完全版

    - **构造函数**:用于初始化对象。 - **属性**:提供了一种简化的方式访问类的私有字段。 - **索引器**:使类能够像数组一样被索引。 - **事件**:用于在类之间传递信息。 - **运算符**:用户可以自定义类的操作符...

    Pro C# 3.0 And Linq

    **对象初始化器与集合初始化器**:对象初始化器和集合初始化器是C# 3.0提供的简化对象创建和集合填充的语法糖。通过使用这些初始化器,可以一次性设置对象的多个属性或集合的多个元素,使得代码更加紧凑和直观。 **...

    C# 3.0 Feature List

    在C# 2.0中,你需要通过构造函数传递值,而在C# 3.0中,可以使用对象初始化器: ```csharp // C# 2.0 MyClass c = new MyClass(); c.Prop = "asdads"; // C# 3.0 MyClass c = new MyClass { Prop = "test" }; ``` ...

    vs2008视频教程 2 C#3.0与VB9.0的新特性介绍

    8. **对象和集合初始化器**:简化了对象和集合的初始化过程,使得代码更加简洁。 【VB9.0新特性】 1. **类型推断(Option Infer)**:VB9.0允许类型推断,即编译器可以根据变量的初始值自动推断其类型,增强了代码...

    C#3.0宝典 及 源文件

    9. **对象和数组初始化器**:使得创建对象或初始化数组时可以更直观,减少了冗余代码。 《C#3.0宝典》不仅涵盖了这些核心特性,还详细讲解了如何在实际项目中应用这些技术。源文件的提供则让读者有机会亲手实践书中...

    C#+3.0面向对象编程

    9. **对象和集合初始化器**:除了集合初始化器,C# 3.0还提供了对象初始化器,可以一次性设置新创建的对象的所有属性,使代码更清晰。 10. **可空值类型**:C# 3.0引入了可空值类型,允许非引用类型的变量表示“无...

Global site tag (gtag.js) - Google Analytics