曾幾次開始自學C#而未堅持下來。我將再一次開始自學C#,並每日記錄自學過程。以此督促自己堅持學習。同時也希望看到這篇文章的讀者不吝賜教。
「一生二,二生三,三生萬物」,世間萬物往往具有因果衍生關係。面向對象編程吸取 了這種思想,可以從現有的類衍生出新的類,類類相生,生生不息。那麼如何由一個類衍 生出新類呢?
我們創建一個脊椎動物類(Vertebrata),然後由它派 生出哺乳動物類(Mammal),最後再由哺乳動物類派生出人類(Human)。
class Vertebrata
{
//私有成員
private double weight; //體重
private double temperature; //體溫
//公有成員
//屬性:Weight
public double Weight{
get {
return weight;
}
set{
if (value < 0)
weight = 0;
else
weight = value;
}
}
//構造函數
public Vertebrata(){
spine = "脊柱";
weight = 0;
temperature = 0;
}
//方法:呼吸
public virtual void Breathe(){
Console.WriteLine("呼吸");
}
}
下面我們由 Vertebrata 類派生 Mammal 類。
//哺乳動物類
class Mammal : Vertebrata
{
//私有成員
private string arms; //前肢
private string legs; //後肢
private int age; //年齡
//公有成員
//屬性Name
public int Age{
get{
return age;
}
set{
age = value;
}
}
//構造函數
public Mammal(){
arms = "前肢";
legs = "後肢";
Age = 0;
Weight = 100;
Temperature = 37;
}
//方法:呼吸
public override void Breathe(){
Console.WriteLine("呼吸");
}
//方法:哺乳
public void Scukle() {
Console.WriteLine("哺乳");
}
//方法:信息
public virtual void Message() {
Console.WriteLine("體溫:{0}", Temperature);
Console.WriteLine("年齡:{0}", Age);
Console.WriteLine("我有:{0}和{1}", arms, legs);
}
}
知識點:
1.繼承的用法
2.派生類將繼承基類的繼承的除private 外的所有方法
3.protected 成員雖然不能被外界使用,但可以被派生類使用。
4.在基類中,用關鍵字 virtual 聲明虛方法。在派生類中,用關鍵字 override 重寫基類的虛方法。
5.用關鍵字 new 聲明一個重寫基類中的普通方法。這時候要使用base 關鍵字引用基類的方法。
C#中所有的類都直接或間接繼承於 Object 類,如果在定義類時沒有指定基類,編譯器 就會自動使它繼承於 Object 類。 C#專門設計了 object 關鍵字,它相當於 Object 的別名。 object obj = new object(); Object 類中定義了 8 個公有虛方法,提供了一些基礎功能。