C 中虛擬屬性與抽象屬性之間的區別

2021-10-23 03:37:15 字數 918 閱讀 4836

以下面的例子介紹

參考

public

abstract

class

astring s;

//虛擬屬性可以有實現**

public

virtual

string vritualproperty

set}

}public

classb:

aset

}//重寫屬性可以呼叫基類中的實現

public

override

string vritualproperty

set}

}

在**設計的時候的區別:

抽象屬性在**設計的時候主要工作多型抽象類的抽象特性,比如

//抽象類設定為使用者

public

abstract

class

user

}//女性使用者

public

class femaleuser :user

set}}

//男性使用者

public

class maleuser :user

set}}

而虛擬屬性在進行**設計的時候相比於抽象方法又有一定的封裝特點。

因為虛擬屬性在定義的時候就已經定義了一部分內容在「虛擬屬性」中,重寫時,可以在之前定義的屬性中加以修改,形成具有一定特性的新屬性

如下例所示:

class student}}

}class normalstudent:student

}}

C 中的抽象類 抽象屬性 抽象方法

c 允許把類 屬性和函式宣告為abstract。抽象類不能例項化,抽象類可以包含普通屬性和抽象屬性,普通函式和抽象函式。抽象函式就是只有函式定義沒有函式體的函式。顯然,抽象函式本身也是虛擬 virtual 的。注意 類是乙個模板,那麼抽象類就是乙個不完整的模板。我們自然不可以使用不完整的模板去構造物...

屬性與索引之間的比較

來自msdn的 屬性與索引器之間的比較 索引器與屬性類似。除下表中顯示的差別外,為屬性訪問器定義的所有規則同樣適用於索引器訪問器。屬性 索引器 允許呼叫方法,如同它們是公共資料成員。允許呼叫物件上的方法,如同物件是乙個陣列。可通過簡單的名稱進行訪問。可通過索引器進行訪問。可以為靜態成員或例項成員。必...

C 中的域與屬性

c 中類成員變數的定義分為兩種 域 field 與屬性 property 屬性為公有變數,以get,set訪問器進行訪問,域多為私有變數,非get set訪問器進行訪問,如以下類的的域為成員name,而屬性為val.class customer endregion 當我們獲得乙個類物件時,我們就可以...