c#多态的简单练习
来源:互联网 发布:微信mac安装包dmg 编辑:程序博客网 时间:2024/05/07 05:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 模拟优盘
{
class Program
{
//给移动存储设备为父类,两个抽象类为读写
//移动硬盘继承fuli,抽象类读写
//u盘继承父类,抽象读写
//MP3继承父类,抽象读写,MP3自己的播放音乐函数
//电脑类,读写函数,传父类对象进来,父类对象再调用读写函数
static void Main(string[] args)
{
mobilestorage a = new mobileDisk();
mobilestorage b = new Mp3();
mobilestorage e = new uDisk();
computer c = new computer();
c.write(a);
c.read(a);
c.read(b);
c.write(b);
c.write(e);
c.read(e);
Console.ReadKey();
}
abstract public class mobilestorage //抽象类
{
abstract public void write();
abstract public void read();
}
public class mobileDisk:mobilestorage
{
public override void write()
{
Console.WriteLine("移动硬盘的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("移动硬盘的读");
}
}
public class uDisk : mobilestorage
{
public override void write()
{
//throw new NotImplementedException();
Console.WriteLine("优盘的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("优盘的读取");
}
}
public class Mp3 : mobilestorage
{
public override void write()
{
//throw new NotImplementedException();
Console.WriteLine("MP3的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("MP3的读取");
}
}
public class computer
{
public void write(mobilestorage ms)
{
ms.write();
}
public void read(mobilestorage ms)
{
ms.read();
}
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 模拟优盘
{
class Program
{
//给移动存储设备为父类,两个抽象类为读写
//移动硬盘继承fuli,抽象类读写
//u盘继承父类,抽象读写
//MP3继承父类,抽象读写,MP3自己的播放音乐函数
//电脑类,读写函数,传父类对象进来,父类对象再调用读写函数
static void Main(string[] args)
{
mobilestorage a = new mobileDisk();
mobilestorage b = new Mp3();
mobilestorage e = new uDisk();
computer c = new computer();
c.write(a);
c.read(a);
c.read(b);
c.write(b);
c.write(e);
c.read(e);
Console.ReadKey();
}
abstract public class mobilestorage //抽象类
{
abstract public void write();
abstract public void read();
}
public class mobileDisk:mobilestorage
{
public override void write()
{
Console.WriteLine("移动硬盘的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("移动硬盘的读");
}
}
public class uDisk : mobilestorage
{
public override void write()
{
//throw new NotImplementedException();
Console.WriteLine("优盘的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("优盘的读取");
}
}
public class Mp3 : mobilestorage
{
public override void write()
{
//throw new NotImplementedException();
Console.WriteLine("MP3的写入");
}
public override void read()
{
//throw new NotImplementedException();
Console.WriteLine("MP3的读取");
}
}
public class computer
{
public void write(mobilestorage ms)
{
ms.write();
}
public void read(mobilestorage ms)
{
ms.read();
}
}
}
}
0 0
- c#多态的简单练习
- C#简单的多态
- c#的练习
- c# 类的练习
- 一个简单的练习
- MSQL的简单练习
- MYSQL的简单练习
- 简单的四则运算!【练习】
- CSS的简单练习
- CSS的简单练习
- 指针的简单练习
- 函数的简单练习
- 简单的算法练习
- 简单的jav练习
- AOP的简单练习
- AOP的简单练习
- AOP的简单练习
- AOP的简单练习
- JSP页面呈现HTML效果不正确的问题
- 多线程学习系列二 线程同步-互斥量的使用
- 第17章 MVC模式与Struts2框架
- Hough
- css基础精华01
- c#多态的简单练习
- 如何输出源文件的标题和目前执行行的行数
- HA之heartbeat3.0.6安装配置
- android scrollView 内部子布局MATCH_PARENT却无法填充满屏幕问题
- Maven多模块依赖
- SilverLight程序之:获取SilverLight.Web项目中路径Uri
- 看到一个程序员成长之路 一点点感慨
- UVA 514 Rails 栈
- [leetcode] Ugly Number II