<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 78  文章 - 25  trackbacks - 0
    <2009年10月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿

    隨筆分類(75)

    隨筆檔案(78)

    相冊

    實用Links

    我的Links

    搜索

    •  

    積分與排名

    • 積分 - 114113
    • 排名 - 516

    最新評論

    閱讀排行榜

    評論排行榜

    覆蓋類成員:通過new關鍵字修飾虛函數表示覆蓋該虛函數。
    一個虛函數被覆蓋后,任何父類變量都不能訪問該虛函數的具體實現。
    public virtual void IntroduceMyself(){...}//父類虛函數
    public new void IntroduceMyself(){...}//子類覆蓋父類虛函數

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace MethodOverrideByNew
    {
        
    public enum Genders { 
            Female
    =0,
            Male
    =1
        }
        
    public class Person {
            
    protected string _name;
            
    protected int _age;
            
    protected Genders _gender;
            
    /// <summary>
            /// 父類構造函數
            /// </summary>
            public Person() {
                
    this._name = "DefaultName";
                
    this._age = 23;
                
    this._gender = Genders.Male;
            }
            
    /// <summary>
            /// 定義虛函數IntroduceMyself()
            /// </summary>
            public virtual void IntroduceMyself() {
                System.Console.WriteLine(
    "Person.IntroduceMyself()");
            }
            
    /// <summary>
            /// 定義虛函數PrintName()
            /// </summary>
            public virtual void PrintName() {
                System.Console.WriteLine(
    "Person.PrintName()");
            }
        }
        
    public class ChinesePerson :Person{
            
    /// <summary>
            /// 子類構造函數,指明從父類無參構造函數調用起
            /// </summary>
            public ChinesePerson() :base(){
                
    this._name = "DefaultChineseName";
            }
            
    /// <summary>
            /// 覆蓋父類方法IntroduceMyself,使用new關鍵字修飾虛函數
            /// </summary>
            public new void IntroduceMyself() {
                System.Console.WriteLine(
    "ChinesePerson.IntroduceMyself()");
            }
            
    /// <summary>
            /// 重載父類方法PrintName,使用override關鍵字修飾虛函數
            /// </summary>
            public override void PrintName(){
                System.Console.WriteLine(
    "ChinesePerson.PrintName()");            
            }
        }

        
    class Program
        {
            
    static void Main(string[] args)
            {
                
    //定義兩個對象,一個父類對象,一個子類對象
                Person aPerson = new ChinesePerson();
                ChinesePerson cnPerson 
    = new ChinesePerson();
                
    //調用覆蓋的方法,父類對象不能調用子類覆蓋過的方法,只能調用自身的虛函數方法
                aPerson.IntroduceMyself();      
                cnPerson.IntroduceMyself();
                
    //調用重載方法,父類對象和子類對象都可以調用子類重載過后的方法
                aPerson.PrintName();
                cnPerson.PrintName();

                System.Console.ReadLine();
            }
        }
    }

    結果:
    Person.IntroduceMyself()
    ChinesePerson.IntroduceMyself()
    ChinesePerson.PrintName()
    ChinesePerson.PrintName()



    posted on 2009-10-26 15:57 期待明天 閱讀(749) 評論(0)  編輯  收藏 所屬分類: CSharp
    主站蜘蛛池模板: A在线观看免费网站大全| 13小箩利洗澡无码视频网站免费| 8888四色奇米在线观看免费看| 亚洲中文字幕在线观看| 深夜a级毛片免费视频| 日韩a在线观看免费观看| MM1313亚洲国产精品| 五月天婷亚洲天综合网精品偷| 视频免费1区二区三区| 亚洲国产精品自产在线播放 | 免费a级毛片无码av| 精品亚洲av无码一区二区柚蜜| 国产成人免费片在线视频观看| 精品特级一级毛片免费观看| 亚洲国产天堂久久综合| 国产免费黄色无码视频| 亚洲大尺度无码专区尤物| 精品无码人妻一区二区免费蜜桃 | 九九久久精品国产免费看小说 | 免费人成在线观看视频播放| 一级毛片在播放免费| 精品亚洲综合在线第一区| 日本免费大黄在线观看| 亚洲人成图片网站| 国产一级理论免费版| yellow免费网站| 亚洲宅男永久在线| 午夜电影免费观看| caoporm碰最新免费公开视频| 日韩亚洲Av人人夜夜澡人人爽 | 无码不卡亚洲成?人片| 最近免费mv在线观看动漫| 亚洲91精品麻豆国产系列在线| 日本免费电影一区| 二区久久国产乱子伦免费精品| 1区1区3区4区产品亚洲| 亚洲中文字幕日产乱码高清app | 色老头综合免费视频| 精品亚洲aⅴ在线观看| 国产性生交xxxxx免费| 精品国产麻豆免费人成网站|