首页 > 代码库 > 08移动设备存储
08移动设备存储
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace _08移动设备存储{ class Program { static void Main(string[] args) { MobileDisk md = new MobileDisk(); Mp3 mp3 = new Mp3(); UDisk ud = new UDisk(); Computer cpu = new Computer(); //传入移动硬盘参数,即执行移动硬盘子类的方法 //因为移动存储父类是抽象类,不能实例化,只能新建一个cpu普通类来实现读写。并将抽象父类传入cpu操作方法中 //cpu.CpuRead(md); //cpu.CpuWrite(md); //第二种方法,定义属性 cpu.ms = mp3;//将MP3插入到电脑中 cpu.CpuRead(); cpu.CpuWrite(); mp3.PlayMusic(); Console.ReadKey(); } } abstract class MobileStorage { public abstract void Read(); public abstract void Write(); } class MobileDisk : MobileStorage { public override void Read() { Console.WriteLine("移动硬盘在读取"); } public override void Write() { Console.WriteLine("移动硬盘在写入"); } } class UDisk : MobileStorage { public override void Read() { Console.WriteLine("U盘在读取"); } public override void Write() { Console.WriteLine("U盘在写入"); } } class Mp3 : MobileStorage { public override void Read() { Console.WriteLine("mp3在读取"); } public override void Write() { Console.WriteLine("mp3在写入"); } public void PlayMusic() { Console.WriteLine("MP3在播放音乐"); } } //电脑去识别各种设备,并执行读写方法 //多态,就是把所有子类对象当作父类对象来看 class Computer { //public void CpuRead(MobileStorage ms) //{ // //执行的是父类的方法,但子类对父类方法进行了重写,真正执行的是子类方法 // ms.Read(); //} //public void CpuWrite(MobileStorage ms) //{ // ms.Write(); //} //第二种方法,定义类属性,本质上等于传参 //自动属性 public MobileStorage ms { get;set; } public void CpuRead() { this.ms.Read(); } public void CpuWrite() { this.ms.Write(); } }}
08移动设备存储
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。