c#匿名類


何謂匿名類,其實本質和普通定義的類一樣,只不過是由系統的編譯器來完成的,首先舉個例子。

一般情況

//聲明一個類,包含貼別多的字段
public class Person()
{
    public string  Name{set;ge;}
    public int   Age{set;get;}
                .
                .                      
                .
                .
                .
}

//實例化和初始化
Person person=new Person();
person.Name="喜羊羊";
person.Age="懶洋洋";
           。
        。
        。    
        。

可以看出,當字段特別多的時候,太麻煩了,所以c#3.0提供了匿名類。語法是 var   名字=new {字段賦值};
其中var在c#中和在javascript中是不同的,c#中只是作為推斷,根據賦值推斷出類型,隱式類型 var。 隱式類型的本地變量是強類型變量(就好像您已經聲明該類型一樣),但由編譯器確定類型。

1)var類型的值必須是局部變量或靜態變量

  2)var變量在聲明之前必須被初始化

  3)變量的值不能為null(這樣編譯器就不能判斷類型了)

  4)var變量不能為一個方法或方法組

  5)不能用來聲明參數類型

javascript中var類型不做判斷,什么類型都可以,這個變量是什么類型的(比如String,int,double等)不做嚴格的限定。

 

 //匿名類;聲明一個類#3.0,相當於把類初始化和對象聲明放在一起
            var news = new { title="特大喜訊",author="夕陽眼",postdate="3013-10-9",msg="今晚公布"};

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM