Net基础复习
今天在云和學院復習了之前學的C#知識
面向對象
練習:磁盤上有不同的文件,比如:.txt文本文件、.doc視頻文件、.xls電子表格。要求:編寫一個控制臺程序,用戶輸入一個帶后綴名的文件,將該文件名傳遞到一個方法中,該方法中根據用戶輸入的文件名后綴,返回一個對應的文件對象。提示:編寫不同的類模擬不同的文件、為不同的文件類創建統一的父類、使用簡單工廠實現。
class Program{static void Main(string[] args){Console.WriteLine("請輸入文件名:");string strname=Console.ReadLine();factory fa = new factory();AbFile af = fa.CreateFile(strname);af.GetFileName();Console.ReadKey();}} }?
abstract class AbFile{abstract public void GetFileName();}?
class doc:AbFile{public override void GetFileName(){Console.WriteLine("我是doc文件,用Word文檔打開");}}class txt:AbFile{public override void GetFileName(){Console.WriteLine("我是一個txt文件,用記事本打開");}}class xls:AbFile{public override void GetFileName(){Console.WriteLine("我是xls文件,用Exel表打開");}}class factory{public AbFile CreateFile(string filename){string[] str = filename.Split('.');switch(str[1]){case "txt":return new txt();case "doc": return new doc();default: return new xls();}}}?虛方法、抽象方法
?關于虛方法需要注意的幾點: ?1.父類中如果有方法需要讓子類重寫,則可以將該方法標記為virtual ?2.虛方法在父類中必須有實現,哪怕是空實現。 ?3.虛方法子類可以重寫(override),也可以不重寫 ?關于抽象方法注意的幾點: ?1.需要用abstract關鍵字標記 ?2.抽象方法不能有任何方法實現。 ?3.抽象成員必須包含在抽象類中。 ?4.由于抽象成員沒有任何實現,所以子類必須將抽象成員重寫。 ?5.抽象類不能實例化, ?抽象類的作用:抽象類的作用就是為了讓子類繼承。 ?6.抽象類中可以包括抽象成員,可以包括有具體代碼的成員。 ?7. 還有抽象方法不能用static修飾 練習:動物Animal?都有吃Eat和叫Bark的方法,狗Dog和貓Cat叫的方法不一樣.父類中沒有默認的實現所喲考慮用抽象方法。 abstract class Animal{public string Name { set; get; }abstract public void Eat();abstract public void Berk(); }class Cat:Animal{public override void Eat(){Console.WriteLine("貓吃魚");}public override void Berk(){Console.WriteLine("喵喵");}}class Dog:Animal{public override void Eat(){Console.WriteLine("狗吃骨頭");}public override void Berk(){Console.WriteLine("汪汪");}}class Program{static void Main(string[] args){Cat c = new Cat();c.Berk();c.Eat();Dog d = new Dog();d.Berk();d.Eat();Console.ReadKey();}}轉載于:https://www.cnblogs.com/songfang/p/4138366.html
總結
- 上一篇: android中OnItemClickL
- 下一篇: 链接服务器---无效的产品名称