匿名类型,经常用于LINQ查询的结果之中。
具名类型,它的对象创建表达式由三部分组成:new关键字,类名或构造函数,对象初始化语句。对象初始化语句在一组大括号内,包含了以逗号分隔的成员初始化列表。
匿名类型,它的对象创建表达式使用相同的形式,但是没有类名和构造函数。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 匿名类型
{
class Program
{
static void Main(string[] args)
{
//匿名类型的对象初始化语句
var Student = new { name = "张三", age = 16 };
Console.WriteLine("姓名:{0} , 年龄:{1}", Student.name, Student.age);
Console.Read();
}
}
}
如果编译器遇到了另一个具有相同的参数名,相同的推断类型,相同顺序的匿名类型,它会重新使用这个类型,并直接创建新的实例,不会创建新的匿名类型。