码迷,mamicode.com
首页 > 移动开发 > 详细

用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。

时间:2015-08-06 12:46:43      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 多态模拟移动硬盘和U盘
{
    class Program
    {
        static void Main(string[] args)
        {
            //用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。
            MobileTool mt = new UDisk();
            Computer cpu = new Computer();
            cpu.CpuRead(mt);
            cpu.CpuWrite(mt);
            Console.ReadKey();
        }
        /// <summary>
        /// 抽象的父类
        /// </summary>
        public abstract class MobileTool
        {
            public abstract void Read();
            public  abstract void Write();
        }
        public class UDisk : MobileTool
        {
            public override void Read()
            {
                Console.WriteLine("U盘读取成功");
            }
            public override void Write()
            {
                Console.WriteLine("U盘写入成功");
            }
        }
        public class Mp3Disk : MobileTool
        {
            public override void Read()
            {
                Console.WriteLine("Mp3读取成功");
            }
            public override  void Write()
            {
                Console.WriteLine("Mp3写入成功");
            }
            public void PlayMuisc()
            {
                Console.WriteLine("Mp3自己可以播放音乐");
            }
        }
        public class MobileDisk : MobileTool
        {
            public override void Read()
            {
                Console.WriteLine("移动硬盘读取成功");
            }
            public override void Write()
            {
                Console.WriteLine("移动硬盘写入成功");
            }
        }
        public class Computer
        {
            public void CpuRead(MobileTool mt)
            {
                mt.Read();
             }
            public void CpuWrite(MobileTool mt )
            {
                mt.Read();
            }
        }
    }
}

在computer抓取父类的方法有多种:可以方法中传递参数抓取,可以通过构造函数,也可以通过属性来抓取。

 static void Main(string[] args)
        {   
            MobileTool mt = new UDisk();
            Computer cpu = new Computer();
            cpu.Mt = mt;
            cpu.CpuRead();
            cpu.CpuWrite();
            Console.ReadKey();
        }










     public class Computer
        {
            private MobileTool _mt;
            internal MobileTool Mt
            {
                get { return _mt; }
                set { _mt = value; }
            }
            public void CpuRead()
            {
                Mt.Read();
             }
            public void CpuWrite()
            {
                Mt.Read();

 

用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。

标签:

原文地址:http://www.cnblogs.com/kangshuai/p/4707442.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!