你們好,我叫李京陽,,很高興認識你們,之因此我想開一個本身的博客,就是來把本身所瞭解的知識點經過本身的話寫一下,但願被博客園的朋友們點評和一塊兒討論一下,也但願從博客園中多認識一些軟件開發人員!如今我開始講一下面向對象的一點知識,請大家多多點評和討論!!this
1. 繼承的目的: 子類但願獲得父類中的成員,而不本身去親自定義.
給你們看張解析繼承的圖理解一下,嘻嘻:spa
2. 繼承的語法:
a. 在子類的類名後面寫1個冒號再跟上父親類的名字.
class Student:Person
{
}
b. Student類從Person類繼承,Student類是Person類的子類.Person類是Student類的父類.
Student類從Person類派生,Studnet類是Person類的派生類,Person類是Student類的基類.
3d
1 class Student:Person 2 { 3 4 public string StuNo { get; set; } 5 6 7 public void Test() 8 { 9 this.Height = 178; 10 }
3. 子類從父類繼承,那麼子類就擁有父類的所有成員.
4. 繼承是類的繼承, 而不是對象的繼承.
子類從父類繼承,就至關於在 子類的模板中 擁有類父類的全部的成員.
在建立子類對象的時候,仍然是根據子類模板來建立的,只不過這個子類模板中擁有了父類的成員.
因此我建立1個子類對象 這個子類對象中擁有子類的成員和父類的全部成員.
code
1 class Person 2 { 3 4 public string Name { get; set; } 5 private int Age { get; set; } 6 internal bool Gender { get; set; } 7 protected double Height { get; set; } 8 9 10 public void SayHi() 11 { 12 this.Height = 178; 13 Console.WriteLine("年齡:" + Age); 14 } 15 }
1 class Student:Person 2 { 3 4 public string StuNo { get; set; } 5 6 7 public void Test() 8 { 9 this.Height = 178; 10 }
5. 子類從父類繼承,子類就能夠擁有父類的所有成員嗎?
a. 在子類中,能夠訪問父類的public和internal 不能訪問private
b. 子類從父類繼承,那麼子類模板中就擁有了父類模板中的全部成員,包括私有成員.
在建立子類對象的時候, 由於子類對象是根據子類模板建立愛的,因此子類對象中天然也就有父類的私有成員.
只不過父類的私有成員 在子類的內部沒法訪問,可是它卻真實的存在.
c. 類的成員的訪問修飾符
public: 能夠在任意的地方訪問.
private: 只能在類的內部訪問
internal: 能夠在當前程序集中訪問
protected: 能夠在本類和本類的子類中訪問.
對象
1 public string Name { get; set; } 2 private int Age { get; set; } 3 internal bool Gender { get; set; } 4 protected double Height { get; set; }
d. 子類從父類繼承,子類模板中就擁有了父類模板中的全部成員,包括私有的.
只不過在子類的內部只能訪問父類的 非私有成員.
6. 靜態成員也是能夠繼承的,只不過不管經過父類去訪問仍是經過子類去訪問 訪問到的都是同1個靜態成員.
子類和父類共享1個靜態成員.靜態成員仍然只存在1份.
7. 繼承的好處:
a. 減小代碼的冗餘.
b. 修改維護極爲方便.
c. 爲了多態.blog