首页 > 代码库 > 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移动设备存储