Talon_Lau 发表于 2013-1-1 21:56:19

抽象类课堂练习题

抽象类课堂练习题

<div id="cnblogs_post_body">练习题题目:要实现U盘、MP3播放器、移动硬盘三种移动存储设备,要求计算机能通这三种设备进行数据交换,并且以后可能会有新的第三方的移动存储设备,所以计算机必须有扩展性,能与目前为止而以后可能会出现的存储设备进行数据交换。各个存储设备间读、写得实现方法不同,U盘和移动硬盘只有这两个方法,MP3Player还有一个playMusic方法;
<div class="cnblogs_code">using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Practices03{    class Program    {      static void Main(string[] args)      {            Computer myComputer = new Computer();            RSD myRSD = new USB();            myRSD.ReadDate();            myRSD.WriteDate();            Console.ReadKey();      }    }    /// <summary>    /// RSD:移动存储设备    /// </summary>   abstract class RSD    {       public abstract void ReadDate();       public abstract void WriteDate();    }   class USB:RSD   {       public override void ReadDate()       {         Console.WriteLine("ReadDate method for USB!");       }       public override void WriteDate()       {         Console.WriteLine("WtiteDate method for USB!");       }   }   class MP3Player:RSD   {       public override void ReadDate()       {         Console.WriteLine("ReadDate method for MP3Player!");       }       public override void WriteDate()       {         Console.WriteLine("WtiteDate method for MP3Player!");       }       public virtual void PlayMusic()       {         Console.WriteLine("PlayMusic method for MP3Player!");       }   }   class MobileHDD:RSD   {       public override void ReadDate()       {         Console.WriteLine("ReadDate method for MobileHDD!");       }       public override void WriteDate()       {         Console.WriteLine("WtiteDate method for MobileHDD!");       }   }   class Computer   {       public RSD RSD { get; set; }       public void ReadDate()       {         RSD.ReadDate();       }       public void WriteDate()       {         RSD.WriteDate();       }   }}
页: [1]
查看完整版本: 抽象类课堂练习题