C# 抽象类练习(命名不规范)
C# 抽象类练习(命名不规范)
using System; namespace 抽象类练习 { class Program { static void Main(string[] args) { U盘 U = new U盘();//实例化 移动硬盘 Y = new 移动硬盘();//实例化 MP3 M = new MP3();//实例化 Console.WriteLine("=================="); 电脑 DU = new 电脑(U);//实例化 DU.Cpu读取();//调用方法 DU.Cpu写入();//调用方法 Console.WriteLine("=================="); 电脑 DY = new 电脑(Y); DY.Cpu读取(); DY.Cpu写入(); Console.WriteLine("=================="); 电脑 DM = new 电脑(M); DM.Cpu读取(); DM.Cpu写入(); Console.ReadKey(); } } abstract class 可移动设备 //抽象类 { public abstract void Read();//抽象方法 public abstract void Write();//抽象方法 } class U盘 : 可移动设备 //继承 { public override void Read() { Console.WriteLine("U盘读取."); }//重写 public override void Write() { Console.WriteLine("U盘写入."); }//重写 } class 移动硬盘 : 可移动设备 { public override void Read() { Console.WriteLine("移动硬盘读取."); } public override void Write() { Console.WriteLine("移动硬盘写入."); } } class MP3 : 可移动设备 { public override void Read() { Console.WriteLine("MP3读取."); } public override void Write() { Console.WriteLine("MP3写入."); } } class 电脑 { private 可移动设备 _k;//字段 public 电脑(可移动设备 k)//构造函数 { this._k = k; } public void Cpu读取()//方法 { _k.Read();//调用方法 } public void Cpu写入() { _k.Write(); } } }
输出结果: