C#简单工厂和抽象类的实例
来源:互联网 发布:cf占卜软件 编辑:程序博客网 时间:2024/05/17 06:24
using System;using System.Collections.Generic;using System.Diagnostics;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 模拟磁盘打开文件{ class Program { static void Main(string[] args) { Console.WriteLine("请选择要进入的磁盘"); string path = Console.ReadLine(); Console.WriteLine("请选择要打开的文件"); string fileName = Console.ReadLine(); FileFarher ff = GetFile(fileName,path+fileName);//返回的是被之类重写的FileFarher ff.OpenFile(); Console.ReadLine(); } public static FileFarher GetFile(string filename,string fullpath) { string extension = Path.GetExtension(filename); FileFarher ff = null; switch (extension) { case ".txt":ff = new TxTPath(fullpath); break; case ".jpg":ff = new JpgPath(fullpath); break; } return ff; } } public abstract class FileFarher //父类 { public string fileName { get; set; } public FileFarher(string filename) { this.fileName = filename; } public abstract void OpenFile(); } public class TxTPath : FileFarher //继承父类 { public TxTPath(string filename) : base(filename) //继承父类中的filename { } public override void OpenFile() { ProcessStartInfo pso = new ProcessStartInfo(this.fileName); Process p = new Process(); p.StartInfo = pso; p.Start(); } } public class JpgPath : FileFarher //继承父类 { public JpgPath(string filename) : base(filename) //继承父类中的filename { } public override void OpenFile() { } }}
0 0
- C#简单工厂和抽象类的实例
- c#抽象工厂实例
- 简单工厂,工厂方法,抽象工厂 三种设计模式的区别和实例
- C#简单抽象工厂
- 简单工厂(可配置的工厂类)和工厂方法模式以及抽象工厂
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别总结
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别
- 简单工厂,工厂方法和抽象工厂的区别总结
- 《C++ Primer Plus(第六版)》(16)(第十章 对象和类 笔记和复习题答案)
- MySQL中的排序规则
- Android获取星期、阳历日期、及农历日期
- //4.创建一个数组, //实现函数init()初始化数组、 //实现empty()清空数组、 //实现reverse()函数完成数组元素的逆置。 //要求:自己设计函数的参数,返回值。
- exit()和_exit()的区别
- C#简单工厂和抽象类的实例
- 实现一个函数判断year是不是润年。
- PTA 5-1 List Components (25分)
- 【HTTP】单点登录原理与简单实现
- pycaffe的小问题- -
- 使用函数实现两个数的交换。
- iOS运行某些工程时屏幕上下出现黑边的解决办法
- Shiro-Realm
- Thinkphp5因xdebug配置不当报错