c# abstract抽象類與繼承類子類的建構函式_base
///
/// 抽象類Vehicle
///
abstract class Vehicle
{
public int wheels;//公有成員
public float weight;//保護成員:重量
//建構函式也有許可權訪問符public等
public Vehicle(int w, float g)
{
wheels = w;
weight = g;
}
//virtual的作用是什麼呢 virtual,在抽象類中標記為virtual的方法,在子類中才可以用override進行重寫
//virtual宣告的方法之方法體也可以不寫任何東東,僅有一個{}
public virtual void Speak()
{
//--Console.WriteLine("the w vehicle is speaking!");
}
}
class Car : Vehicle //繼承抽象類vehicle
{
int passengers;//私有成員:數
public Car(int w, float g, int p)
: base(w, g) //:base自動切到下一行 透過base父類的建構函式才可以為父類的域提供值,不然不成:base(w,g),此w,g源於car子類的建構函式的引數
{
wheels = w;
weight = g;
passengers = p;
}
//繼承抽象父類,對抽象父類的virtual方法進行重寫(override)
public override void Speak()
{
Console.WriteLine("the car is speaking:di-di");
}
}
}
/// 抽象類Vehicle
///
abstract class Vehicle
{
public int wheels;//公有成員
public float weight;//保護成員:重量
//建構函式也有許可權訪問符public等
public Vehicle(int w, float g)
{
wheels = w;
weight = g;
}
//virtual的作用是什麼呢 virtual,在抽象類中標記為virtual的方法,在子類中才可以用override進行重寫
//virtual宣告的方法之方法體也可以不寫任何東東,僅有一個{}
public virtual void Speak()
{
//--Console.WriteLine("the w vehicle is speaking!");
}
}
class Car : Vehicle //繼承抽象類vehicle
{
int passengers;//私有成員:數
public Car(int w, float g, int p)
: base(w, g) //:base自動切到下一行 透過base父類的建構函式才可以為父類的域提供值,不然不成:base(w,g),此w,g源於car子類的建構函式的引數
{
wheels = w;
weight = g;
passengers = p;
}
//繼承抽象父類,對抽象父類的virtual方法進行重寫(override)
public override void Speak()
{
Console.WriteLine("the car is speaking:di-di");
}
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-718054/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PHP 抽象類繼承抽象類時的注意點PHP 抽象類繼承抽象類時的注意點PHP抽象繼承
- 類的繼承_子類繼承父類繼承
- C#介面、抽象類、普通類和繼承(子類與父類)都有其特定的用途和場景C#抽象繼承
- es5建構函式,es6類和類的繼承函式繼承
- C++中的抽象基類(Abstract Base Class)C++抽象
- 區分:派生類指定基類建構函式、繼承構造、委託構造函式繼承
- 父類和子類的建構函式問題函式
- TypeScript abstract 抽象類TypeScript抽象
- Java之繼承和抽象類Java繼承抽象
- 原型繼承:子類原型繼承
- JS 建構函式與類JS函式
- C++知識點49——類繼承與類的構造、拷貝、operator=和解構函式C++繼承函式
- 繼承 基類與派生類繼承
- 介面和抽象類 (abstract)抽象
- abstract關鍵字 super 關鍵字 類與繼承繼承
- Java基礎10 介面的繼承與抽象類Java繼承抽象
- 介面是否可繼承(extends)介面? 抽象類是否可實現 (implements)介面? 抽象類是否可繼承具體類(concrete class)?繼承抽象
- 類的建構函式和解構函式函式
- 6-2 抽象類的繼承 (5分)抽象繼承
- 建構函式和類函式
- 走進C# abstract,瞭解抽象類與介面的異同C#抽象
- 類的繼承繼承
- scala_繼承、型別判斷、抽象類、匿名內部類繼承型別抽象
- C++ 派生類函式過載與虛擬函式繼承詳解C++函式繼承
- 物件導向 -- 三大特性之繼承 補充 抽象類 介面類物件繼承抽象
- Kotlin之類繼承結構Kotlin繼承
- 關於Java中的物件、類、抽象類、介面、繼承之間的聯絡Java物件抽象繼承
- 繼承中的建構函式繼承函式
- js建構函式的繼承JS函式繼承
- Python類的繼承Python繼承
- 20200109 - 類的繼承繼承
- 建構函式的prototype與各種繼承函式繼承
- C#類繼承自泛型集合C#繼承泛型
- java中的抽象類abstract怎麼使用?Java抽象
- JAVA類的頂層Type抽象和繼承關係Java抽象繼承
- ES6 - 類與繼承繼承
- 菱形繼承與虛基類繼承
- JavaScript基礎: 類與繼承JavaScript繼承
- 類别範本與繼承繼承