第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

(急)虛方法分發(fā)的問題

(急)虛方法分發(fā)的問題

人到中年有點甜 2018-12-06 18:41:25
例一:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace VirtualMethod{ class Program { static void Main(string[] args) { Base b1 = new Derived(); b1.Start();//輸出什么? b1.Stop();//輸出什么? b1.Turn();//輸出什么? } } public interface IVehicle { void Start(); void Stop(); void Turn(); } public class Base : IVehicle { public void Start() { Console.WriteLine("a"); } public void Stop() { Console.WriteLine("b"); } public void Turn() { Console.WriteLine("c"); } } public class Derived : Base, IVehicle { void IVehicle.Start() { Console.WriteLine("d"); } public void Stop() { Console.WriteLine("e"); } public void Turn() { Console.WriteLine("f"); } }}例二:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace VirtualMethod{ class Program { static void Main(string[] args) { ReallyDerived r1 = new ReallyDerived(); Derived r2 = r1; Base r3 = r1; ICommon r4 = r1; r1.Doit();//輸出什么? r2.Doit();//輸出什么? r3.Doit();//輸出什么? r4.Doit();//輸出什么? } } public interface ICommon { void Doit(); } public class Base : ICommon { void ICommon.Doit() { Console.WriteLine("a"); } public virtual void Doit() { Console.WriteLine("b"); } } public class Derived : Base, ICommon { void ICommon.Doit() { Console.WriteLine("c"); } public new virtual void Doit() { Console.WriteLine("d"); } } public class ReallyDerived : Derived { public override void Doit() { Console.WriteLine("e"); } }} 請問標(biāo)記為“輸出什么?”的各個語句輸出什么?請給出原因或分析,謝謝了!
查看完整描述

1 回答

?
HUWWW

TA貢獻(xiàn)1874條經(jīng)驗 獲得超12個贊

1.a,b,c 原因:都是Base類型;

2.e,e,b,c原因:是復(fù)寫與就近原則

查看完整回答
反對 回復(fù) 2019-01-21
  • 1 回答
  • 0 關(guān)注
  • 356 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號