ASP.NET匿名类型var
ASP.NET匿名类型varvar是初始化一个匿名类型对象的专用关键字,关键字var的引入, 背后是强大的编译器做支持, 没有显式的类型声明在程序运行的时候就无法给这个类型的实例分配大小合适的内存!
为了获得可维护的代码, 不要因为使用var关键字方便, 就随意使用这个关键字. 尽量在需要的时候再使用, 比如在讲一个匿名类型的对象赋值给一个变量的时候.
一、在使用var定义变量时有以下四个特点:
1. 必须在定义时初始化。也就是必须是var s = “abcd”形式,而不能是如下形式:
var s;
s = “abcd”;
2. 一但初始化完成,就不能再给变量赋与初始化值类型不同的值了。
3.
4.
二、匿名类型限制条件
没有控制匿名类型的名字
匿名类型继承自Object
匿名类型的字段和属性总是只读的
匿名类型不支持事件、自定义方法、自定义操作符和自定义重写
匿名类型是隐式封闭的
匿名类型的实例创建只使用默认构造函数
三、实例
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace AnonymousClass { class Program { static void Main(string[] args) { //定义匿名类 var val = new { StrVal = "HelloWorld", IntVal = 200 }; System.Console.WriteLine("first variable is: {0}; theSecondVariable is:{1}",val.StrVal,val.IntVal); System.Console.WriteLine("val.ToString() is:{0}",val.ToString()); System.Console.ReadLine(); } } } //结果: first variable is: HelloWorld; theSecondVariable is:200 val.ToString() is:{ StrVal = HelloWorld, IntVal = 200 }