這應該是一個非常直接的問題。我只要求一個簡單容易理解答案。不,我不想要教科書定義或鏈接到文檔,請儘可能簡單地回答。在c中創建一個繼承類的對象#
考慮以下幾點:
class Monster
{
public int Hp { get; protected set; }
public string Name { get; protected set; }
public virtual void Attack()
{
Console.WriteLine("Monster attacking!");
}
}
class Skeleton : Monster
{
public Skeleton()
{
Hp = 20;
Name = "Skeleton";
}
public override void Attack()
{
Console.WriteLine("Skeleton attacking!");
}
}
現在想象一下,我創建類型怪物作爲這樣一個新的骨架對象。
Monster skeleton = new Skeleton();
我想知道創建與怪物類型一個骷髏對象VS創建與骨架型骷髏對象之間的區別。
Skeleton skeleton = new Skeleton();
我不明白這兩者之間是否存在差異,或者真的如何工作。任何和所有幫助表示讚賞!謝謝!
骨架*是一個*怪物,但怪物*並不需要*骨架,考慮一個案例,當你有一羣擁有**多種類型的怪物時,他們所有的攻擊都是相同的時間** –
(Phun打算)希望你不要想着c#/ oop作爲怪物(oop = monster,c#= skeleton):D –