2014-07-10 104 views
-1

我有一個對象的動物:OOP的問題,實例化對象

class Animal{ 

} 

我想創建動物的一個目的,是那裏的主要類的行之間的差異?

class main{ 
    var myVar = new Animal();  // case 1 
    Animal myAnimal = new Animal(); // case 2 
} 

回答

0

沒有區別。 MSDN var description說:

隱式類型局部變量強類型,就像你自己聲明類型,但編譯器確定類型。

換句話說,它只是編寫相同代碼的一種有用方式,只需編譯器的一點幫助。這是相當有用的,當你創建長類型,如:

var dict = new Dictionary<string, List<int>>(); 

代替:

Dictionary<string, List<int>> dict = new Dictionary<string, List<int>>(); 

,但在同一時間,LINQ和匿名類型,使LINQ查詢加入:

var outpus = someList.Where(x => x.SomeData == 0) 
        .Select(new 
        { 
         FieldA = x.SomeField 
        }); 

所以這裏編譯器決定匿名類型,你不必指定它。

您可以閱讀更多關於它on MSDN