程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Orcas版C# 3.0新特性(1)

Orcas版C# 3.0新特性(1)

編輯:關於C語言

自從微軟March CTP版本的Visual Studio和.Net Framework “Orcas”發布以來,許多博客作家都在考察和評論這一版本在run-time Macros和code metrics等方面的新特性。

近日,微軟ASP.Net 和AJax開發部的頭腦Scott GuthrIE又在其博客中發布了C# 3.0的一些新特性。其文中重點提及的C#3.0的新特性如下:

Automatic propertIEs——自動屬性

Orcas 版的C#可以自動建立私有域和默認的get/set函數,而不必由用戶手工聲明私有域和手工建立get/set函數。如:我們使用以前的C#語言編程時,需要手工書寫如下代碼段:

以下是引用片段:

public class Person ...{
private string _firstName;
private string _lastName;
private int _age;
public string FirstName ...{
get ...{
return _firstName;
}set ...{
_firstName = value;
}
}
public string LastName ...{
get ...{
return _lastName;
}
set ...{
_lastName = value;
}
}
public int Age ...{
get ...{
return _age;
}
set ...{
_age = value;
}
}
}

使用Orcas 版的C#後我們可以利用其自動屬性功能重寫如上代碼如下:

以下是引用片段:

public class Person ...{
public string FirstName ...{
get; set;
}
public string LastName ...{
get; set;
}
public int Age ...{
get; set;
}
}

或者為了更加簡潔,我們可以減少空白區域,將代碼緊湊如下:

以下是引用片段:

public class Person ...{
public string FirstName ...{
get; set;
}
public string LastName ...{
get; set;
}
public int Age ...{
get; set;
}
}

當C# “Orcas”編譯器遇到一個如上所示的空白的get/set property implementation時,它將會在你的類中自動產生一個私有域,同時實現一個公共的getter and setter property implementation。這樣做的好處是,從type-contract的角度看,類好像使用了上述第一段代碼中的執行(implementation)。這就意味著,與公共領域不同,我們將來可以在property setter implementation中添加驗證邏輯,而不需要改變任何與類相關的外部組件。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved