最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 多態(tài)性的深入理解

 更新時間:2013年06月09日 08:56:06   作者:  
本篇文章是對C#中的多態(tài)性進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
MSDN 上面的定義:通過繼承,一個類可以有多種類型:可以用作它自己的類型,任何基類型,或者在實(shí)現(xiàn)接口時用作任何接口的類型。
從兩個方面來說明多態(tài)
1.在運(yùn)行時,方法參數(shù)和集合或者是數(shù)組等位置,派生類的對象都可以作為基類的對象處理,發(fā)生此情況時,該對象的聲明類型不再與運(yùn)行時類型相同。
2.基類定義實(shí)現(xiàn)虛方法,派生類重寫這些方法,在運(yùn)行時,CLR會查找運(yùn)行時類型,并且調(diào)用派生類重寫的方法.
復(fù)制代碼 代碼如下:

    class Shape
    {
        public virtual void Draw()
        {
            Console.WriteLine("Draw a shape");
        }
    }
    class Circle : Shape
    {
        public override void Draw()
        {
            Console.WriteLine("Draw a circle");
        }
    }
    class Rectangle : Shape
    {
        public override void Draw()
        {
            Console.WriteLine("Draw a Rectangle");
        }
    }
    class Triangle : Shape
    {
        public override void Draw()
        {
            Console.WriteLine("Draw a Triangle");
        }
    }
    class Programm
    {
        static void Main()
        {
            //此次就說明了,派生類對象可以作為基類對象進(jìn)行處理
            Shape[] shapes =
            {
             new Circle(),
             new Rectangle(),
             new Triangle()
            };

            foreach (Shape s in shapes)
            {
                //調(diào)用Draw()方法的時候,調(diào)用了派生重寫的方法,而不是基類
                s.Draw();
            }
        }
    }

相關(guān)文章

  • C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法

    C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法,可實(shí)現(xiàn)將程序運(yùn)行信息寫入日志并存儲在Debug目錄下的"/Log/PRG"下的功能,涉及C#針對日志的相關(guān)寫入技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • unity 如何獲取Text組件里text內(nèi)容的長度

    unity 如何獲取Text組件里text內(nèi)容的長度

    這篇文章主要介紹了unity 獲取Text組件里text內(nèi)容的長度操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • C#中的程序集和反射介紹

    C#中的程序集和反射介紹

    這篇文章主要介紹了C#中的程序集和反射介紹,程序集包含資源文件,類型元數(shù)據(jù)、IL代碼,每個程序集都有自己的名稱、版本等信息,反射就是動態(tài)獲取程序集中的元數(shù)據(jù)的功能,需要的朋友可以參考下
    2015-01-01
  • c#網(wǎng)絡(luò)喚醒功能實(shí)現(xiàn)

    c#網(wǎng)絡(luò)喚醒功能實(shí)現(xiàn)

    網(wǎng)絡(luò)喚醒實(shí)現(xiàn)了對網(wǎng)絡(luò)的集中管理,即在任何時刻,網(wǎng)管中心的IT管理人員可以經(jīng)由網(wǎng)絡(luò)遠(yuǎn)程喚醒一臺處于休眠或關(guān)機(jī)狀態(tài)的計(jì)算機(jī),下面使用c#實(shí)現(xiàn)網(wǎng)絡(luò)喚醒功能
    2014-01-01
  • C#基于HttpWebRequest實(shí)現(xiàn)發(fā)送HTTP請求的方法分析

    C#基于HttpWebRequest實(shí)現(xiàn)發(fā)送HTTP請求的方法分析

    這篇文章主要介紹了C#基于HttpWebRequest實(shí)現(xiàn)發(fā)送HTTP請求的方法,結(jié)合實(shí)例形式分析了C#使用HttpWebRequest類與System.IO類實(shí)現(xiàn)發(fā)送HTTP請求相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-02-02
  • WinForm實(shí)現(xiàn)跨進(jìn)程通信的方法

    WinForm實(shí)現(xiàn)跨進(jìn)程通信的方法

    這篇文章主要介紹了WinForm實(shí)現(xiàn)跨進(jìn)程通信的方法,通過一個WinMessageHelper類實(shí)現(xiàn)這一功能,需要的朋友可以參考下
    2014-08-08
  • C# Winform使用log4net進(jìn)行日志記錄

    C# Winform使用log4net進(jìn)行日志記錄

    Log4Net是從Java的log4j移植過來的,功能也與log4j類似,可以把日志信息輸出到文件、數(shù)據(jù)庫等不同的介質(zhì)或目標(biāo),下面我們就來學(xué)習(xí)一下如何使用log4net進(jìn)行日志記錄吧
    2023-11-11
  • Unity實(shí)現(xiàn)3D貪吃蛇的移動代碼

    Unity實(shí)現(xiàn)3D貪吃蛇的移動代碼

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)3D貪吃蛇的移動代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C#幾種排序算法

    C#幾種排序算法

    C#幾種排序算法...
    2007-03-03
  • C#中免費(fèi)密碼庫BouncyCastle的使用詳解

    C#中免費(fèi)密碼庫BouncyCastle的使用詳解

    這篇文章主要來和大家分享一個C#版開源、免費(fèi)的Bouncy?Castle密碼庫:BouncyCastle,文中介紹了BouncyCastle的具體使用,需要的可以參考下
    2024-03-03

最新評論

霍州市| 乡城县| 曲麻莱县| 伊春市| 柳林县| 武汉市| 常德市| 辽阳县| 柘城县| 轮台县| 黑龙江省| 夏邑县| 广饶县| 巴南区| 景洪市| 游戏| 兰西县| 连江县| 东乡县| 涟源市| 灌云县| 化德县| 仁寿县| 乐业县| 徐水县| 漾濞| 怀柔区| 离岛区| 通海县| 理塘县| 达拉特旗| 普格县| 青海省| 都江堰市| 旅游| 新泰市| 安平县| 开远市| 庆安县| 隆回县| 北京市|