.Net学习笔记----2015-07-21(C#基础复习08,模拟移动硬盘U盘等)
2015-07-22 00:10
609 查看
/// <summary> /// 由于不知道到用户插入的是什么设备,所以使用抽象类 /// 含有每个设备都具备的读和写2个方法 /// </summary> public abstract class DiskFather { public abstract void Read(); public abstract void Write(); }
class MobileDisk : DiskFather { public override void Read() { Console.WriteLine("移动硬盘在读取数据"); } public override void Write() { Console.WriteLine("移动硬盘在写入数据"); } }
class UDisk : DiskFather { public override void Read() { Console.WriteLine("U盘在读取数据"); } public override void Write() { Console.WriteLine("U盘在写入数据"); } }
class MP3 : DiskFather { public void PlayMusic() { Console.WriteLine("MP3可以播放音乐"); } public override void Read() { Console.WriteLine("MP3在读取数据"); } public override void Write() { Console.WriteLine("MP3在写入数据"); } }
/// <summary> /// 电脑类 /// </summary> class Cpu { public DiskFather DF { get; set; } public void CpuRead() { this.DF.Read(); } public void CpuWrite() { this.DF.Write(); } }
static void Main(string[] args) { MobileDisk md = new MobileDisk(); MP3 mp3 = new MP3(); UDisk ud = new UDisk(); Cpu cpu = new Cpu(); //cpu.DF = md;//子类可以赋值给父类 //cpu.CpuRead(); //cpu.CpuWrite(); //cpu.DF = mp3; //cpu.CpuRead(); //cpu.CpuWrite(); cpu.DF = ud; cpu.CpuRead(); cpu.CpuWrite(); Console.ReadKey(); } }
相关文章推荐
- .Net学习笔记----2015-07-21(C#基础复习07,关键字、访问修饰符)
- 基于C#在WPF中使用斑马打印机进行打印【转】
- C#面向对象常见的变量区分
- C#如何获取当前项目的目录,并以当前为根进行修改
- C#窗体无法接受Keydown事件
- 读改善c#代码157个建议:建议13~15
- C# 中的委托和事件
- 快速傅里叶变换(FFT)的C#实现及详细注释
- C#导出Excel三种方法
- C#高级编程四十五天----格式字符串
- C#5.0 .net 4.5示例
- C#学习笔记(十四):GC机制和弱引用
- C# 添加服务引用。
- C#RSA加密解密
- C#调用XML格式的webconfig节点
- C#调用FFMPEG实现桌面录制(视频+音频+生成本地文件)
- c#快捷键大全
- C#设置WinForm中DataGrid列的方法(列宽/列标题等)
- C# 控件的Tag属性
- .NET: C#: StopWatch