C#-面向对象的多态思想 ---ShinePans
| 總結: 多態是面向對象的核心.---------能夠理解為一個方法,多種實現, 在這里能夠用虛方法,抽象類,接口能夠實現多態 | 
1.首先利用接口來實現多態:
| 接口相當于"功能,"接口能夠實現多繼承,分為 顯式實現接口和隱式實現接口 keyword為interface | 
格式:
? ? interface ?接口名
{?
? ? ?string ......
? ? ?int ....
? ? ?void 方法名(); ?//定義方法
}
代碼演示樣例:(顯示實現接口)
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace Interface_test {class Program{static void Main(string[] args){Car c = new Car();c.Color = "黑色";c.Run();c.Stop();System.Console.ReadLine();}}interface Icar{void Run();void Stop();}interface ICarColor{string Color { get; set; }}class Car:Icar,ICarColor //定義Car類并繼承了多個接口{private string color;public string Color{get{return color;}set{color = value;}}public void Run() //實現接口方法{System.Console.WriteLine("{0}汽車啟動!", color);}public void Stop(){System.Console.WriteLine("{0}汽車停下!", color);}} }代碼演示樣例:(隱式實現接口)
class program
{?
? ? ?static void Main()
? ? ? ?{
? ? ? ? ? ? ? Car c=new Car();
? ? ? ? ? ? ? c.show(); ? ?//調用Car的show();
? ? ? ? ? ? ? Icar ic=c; ? //將Car 轉換為 Icar接口
? ? ? ? ? ? ? ic.show()
? ? ? ? ? ? ? System.Console.ReadLine();
? ? ? ? }
? ? ?interface Icar
? ? ? ? ? ?{
? ? ? ? ? ? ? ? ? void show();
? ? ? ? ? ?}
? ? class Car:ICar
{
? ? ? ? ?public void show()
? ? ? ? ? ? ? ?{
? ? ? ? ? ? ? ? ? ? ? ? ?System.Console.WriteLine("運行show()");
? ? ? ? ? ? ? ?}
}
? ? ? }
2.其次利用抽象類實現多態:
抽象類是不詳細的,定義方法時僅僅須要定義抽象方法,抽象類不能實例化
格式:
public abstract class類名
{
? ? ? public string Name; //定義字段
? ? ? public void show()?
? ? ? ? {
? ? ? ? ?} ? ? ? ?//定義方法
? ? ?public abstract string Color { get;set} ?//定義抽象屬性
? ? ?public abstract void Run(); //定義抽象方法
? ? ?public abstrat void Stop();
}
代碼演示樣例:
抽象類總結: 抽象類中能夠寫方法,也能夠定義抽象方法,在實現這個抽象類的類時,抽象方法須要實現
3.最后能夠利用虛方法來實現
轉載于:https://www.cnblogs.com/mengfanrong/p/4291477.html
總結
以上是生活随笔為你收集整理的C#-面向对象的多态思想 ---ShinePans的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 宇宙分期乐信用卡是大学生卡吗?学生党专属
- 下一篇: 开通京东白条需要什么条件?审核制度让少部
