国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C# 函數(shù)覆蓋總結(jié)學(xué)習(xí)(推薦)

2020-01-24 01:09:11
字體:
供稿:網(wǎng)友

覆蓋類成員:通過new關(guān)鍵字修飾虛函數(shù)表示覆蓋該虛函數(shù)。

一個(gè)虛函數(shù)被覆蓋后,任何父類變量都不能訪問該虛函數(shù)的具體實(shí)現(xiàn)。

public virtual void IntroduceMyself(){...}//父類虛函數(shù)

public new void IntroduceMyself(){...}//子類覆蓋父類虛函數(shù)

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>    /// 父類構(gòu)造函數(shù)    /// </summary>    public Person() {      this._name = "DefaultName";      this._age = 23;      this._gender = Genders.Male;    }    /// <summary>    /// 定義虛函數(shù)IntroduceMyself()    /// </summary>    public virtual void IntroduceMyself() {      System.Console.WriteLine("Person.IntroduceMyself()");    }    /// <summary>    /// 定義虛函數(shù)PrintName()    /// </summary>    public virtual void PrintName() {      System.Console.WriteLine("Person.PrintName()");    }  }  public class ChinesePerson :Person{    /// <summary>    /// 子類構(gòu)造函數(shù),指明從父類無參構(gòu)造函數(shù)調(diào)用起    /// </summary>    public ChinesePerson() :base(){      this._name = "DefaultChineseName";    }    /// <summary>    /// 覆蓋父類方法IntroduceMyself,使用new關(guān)鍵字修飾虛函數(shù)    /// </summary>    public new void IntroduceMyself() {      System.Console.WriteLine("ChinesePerson.IntroduceMyself()");    }    /// <summary>    /// 重載父類方法PrintName,使用override關(guān)鍵字修飾虛函數(shù)    /// </summary>    public override void PrintName(){      System.Console.WriteLine("ChinesePerson.PrintName()");          }  }  class Program  {    static void Main(string[] args)    {      //定義兩個(gè)對象,一個(gè)父類對象,一個(gè)子類對象      Person aPerson = new ChinesePerson();      ChinesePerson cnPerson = new ChinesePerson();      //調(diào)用覆蓋的方法,父類對象不能調(diào)用子類覆蓋過的方法,只能調(diào)用自身的虛函數(shù)方法      aPerson.IntroduceMyself();         cnPerson.IntroduceMyself();      //調(diào)用重載方法,父類對象和子類對象都可以調(diào)用子類重載過后的方法      aPerson.PrintName();      cnPerson.PrintName();      System.Console.ReadLine();    }  }}

結(jié)果:

Person.IntroduceMyself()

ChinesePerson.IntroduceMyself()

ChinesePerson.PrintName()

ChinesePerson.PrintName()

以上這篇C# 函數(shù)覆蓋總結(jié)學(xué)習(xí)(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 红原县| 武安市| 万宁市| 凌海市| 紫金县| 根河市| 咸宁市| 渝中区| 浮梁县| 安康市| 江门市| 武冈市| 文安县| 建瓯市| 什邡市| 海晏县| 白河县| 扶绥县| 天等县| 泰来县| 鹿邑县| 诸暨市| 石家庄市| 南开区| 都江堰市| 丹江口市| 杭州市| 隆子县| 滨海县| 泾川县| 黔西县| 高陵县| 宣武区| 余江县| 大悟县| 博兴县| 桐城市| 梅州市| 防城港市| 林口县| 汕头市|