精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

C# 屬性 Property

c# 屬性 property

屬性(property) 是類(class)、結構(structure)和接口(interface)的命名(named)成員。類或結構中的成員變量或方法稱為 域(field)。屬性(property)是域(field)的擴展,且可使用相同的語法來訪問。它們使用 訪問器(accessors) 讓私有域的值可被讀寫或操作。

屬性(property)不會確定存儲位置。相反,它們具有可讀寫或計算它們值的 訪問器(accessors)

例如,有一個名為 student 的類,帶有 age、name 和 code 的私有域。我們不能在類的范圍以外直接訪問這些域,但是我們可以擁有訪問這些私有域的屬性。

 

1. 訪問器(accessors)

屬性(property)的訪問器(accessor)包含有助于獲取(讀取或計算)或設置(寫入)屬性的可執行語句。訪問器(accessor)聲明可包含一個 get 訪問器、一個 set 訪問器,或者同時包含二者。例如:

// 聲明類型為 string 的 code 屬性
public string code
{
? ?get
? ?{
? ? ? return code;
? ?}
? ?set
? ?{
? ? ? code = value;
? ?}
}

// 聲明類型為 string 的 name 屬性
public string name
{
? ?get
? ?{
? ? ?return name;
? ?}
? ?set
? ?{
? ? ?name = value;
? ?}
}

// 聲明類型為 int 的 age 屬性
public int age
{ 
? ?get
? ?{
? ? ? return age;
? ?}
? ?set
? ?{
? ? ? age = value;
? ?}
}

 

2. 范例

下面的范例演示了屬性(property)的用法:

using system;
namespace yapf
{
? ?class student
? ?{

? ? ? private string code = "n.a";
? ? ? private string name = "not known";
? ? ? private int age = 0;

? ? ? // 聲明類型為 string 的 code 屬性
? ? ? public string code
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return code;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? code = value;
? ? ? ? ?}
? ? ? }
? ?
? ? ? // 聲明類型為 string 的 name 屬性
? ? ? public string name
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return name;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? name = value;
? ? ? ? ?}
? ? ? }

? ? ? // 聲明類型為 int 的 age 屬性
? ? ? public int age
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return age;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? age = value;
? ? ? ? ?}
? ? ? }
? ? ? public override string tostring()
? ? ? {
? ? ? ? ?return "code = " + code +", name = " + name + ", age = " + age;
? ? ? }
? ? }
? ? class exampledemo
? ? {
? ? ? public static void main()
? ? ? {
? ? ? ? ?// 創建一個新的 student 對象
? ? ? ? ?student s = new student();
? ? ? ? ? ? 
? ? ? ? ?// 設置 student 的 code、name 和 age
? ? ? ? ?s.code = "001";
? ? ? ? ?s.name = "zara";
? ? ? ? ?s.age = 9;
? ? ? ? ?console.writeline("student info: {0}", s);
? ? ? ? ?// 增加年齡
? ? ? ? ?s.age += 1;
? ? ? ? ?console.writeline("student info: {0}", s);
? ? ? ? ?console.readkey();
? ? ? ?}
? ?}
}

當上面的代碼被編譯和執行時,它會產生下列結果:

student info: code = 001, name = zara, age = 9
student info: code = 001, name = zara, age = 10

 

3. 抽象屬性(abstract properties)

抽象類可擁有抽象屬性,這些屬性應在派生類中被實現。下面的程序說明了這點:

using system;
namespace yapf
{
? ?public abstract class person
? ?{
? ? ? public abstract string name
? ? ? {
? ? ? ? ?get;
? ? ? ? ?set;
? ? ? }
? ? ? public abstract int age
? ? ? {
? ? ? ? ?get;
? ? ? ? ?set;
? ? ? }
? ?}
? ?class student : person
? ?{

? ? ? private string code = "n.a";
? ? ? private string name = "n.a";
? ? ? private int age = 0;

? ? ? // 聲明類型為 string 的 code 屬性
? ? ? public string code
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return code;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? code = value;
? ? ? ? ?}
? ? ? }
? ?
? ? ? // 聲明類型為 string 的 name 屬性
? ? ? public override string name
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return name;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? name = value;
? ? ? ? ?}
? ? ? }

? ? ? // 聲明類型為 int 的 age 屬性
? ? ? public override int age
? ? ? {
? ? ? ? ?get
? ? ? ? ?{
? ? ? ? ? ? return age;
? ? ? ? ?}
? ? ? ? ?set
? ? ? ? ?{
? ? ? ? ? ? age = value;
? ? ? ? ?}
? ? ? }
? ? ? public override string tostring()
? ? ? {
? ? ? ? ?return "code = " + code +", name = " + name + ", age = " + age;
? ? ? }
? ?}
? ?class exampledemo
? ?{
? ? ? public static void main()
? ? ? {
? ? ? ? ?// 創建一個新的 student 對象
? ? ? ? ?student s = new student();
? ? ? ? ? ? 
? ? ? ? ?// 設置 student 的 code、name 和 age
? ? ? ? ?s.code = "001";
? ? ? ? ?s.name = "zara";
? ? ? ? ?s.age = 9;
? ? ? ? ?console.writeline("student info:- {0}", s);
? ? ? ? ?// 增加年齡
? ? ? ? ?s.age += 1;
? ? ? ? ?console.writeline("student info:- {0}", s);
? ? ? ? ?console.readkey();
? ? ? ?}
? ?}
}

當上面的代碼被編譯和執行時,它會產生下列結果:

student info: code = 001, name = zara, age = 9
student info: code = 001, name = zara, age = 10

下一節:c# 索引器 indexer

c# 教程

相關文章