program.cs //超市收銀系統 SupperMarket sm = new SupperMarket();//創建超市對象 sm.ShowProduct();//展現貨物 sm.AskBuying();//跟用戶交互 Console.ReadKey(); SupperMarket.cs /// <summary> /// 超市 /// </summary>...
[C# 筆記] draft 超商收銀系統-折扣類
父類 CalFather 打折的父類 (抽象類) public abstract decimal GetTotalMoney(decimal realMoney); 子類 CalNormal : CalFather 不打折的子類 CalRate : CalFather 按折扣率打折的子類 public decim...
[C# 筆記] draft 超商收銀系統-倉庫類
超商收銀系統-倉庫類 倉庫 1. 儲存貨物 2. 提貨 3. 進貨 /// <summary> /// 倉庫-儲存貨物 /// </summary> internal class Storehouse { //我在一個集合(倉庫)裡面,再放一個集合(貨架) //這樣做跟剛的區別在:我是添加"集合"進去,不是添加"貨品"進去 //是給這個倉...
[C# 筆記] draft 超市收銀系統-商品類
超市收銀系統-商品類 商品 ProductFather Price Count ID 商品 價格 數量 編號 Acer 價格 數量 編號(唯一的不重複) 三星手機 香蕉 醬油 倉庫 1. 儲存貨物 2. 提貨 3. 進貨 收銀 超市 Guid.NewGuid()產生不重複的編號 Guid.NewGuid(); 程式碼 //超市收銀系統 //產生一個...
[C# 筆記][多型] Interface 介面 -練習2
練習: 真的鴨子會游泳 木頭鴨子不會游泳 橡皮鴨子會游泳 用多型來實現 //真的鴨子會游泳 木頭鴨子不會游泳 橡皮鴨子會游泳 //用多型來實現 //介面去指向真的鴨子 ISwimming swim = new RealDuck(); swim.Swim(); //真的鴨子在游泳 Console.ReadKey(); public class RealDuck : ISwimming...
[C# 筆記][多型] Interface 介面 -練習1
練習:多型-介面 麻雀會飛 鸚鵡會飛 鴕鳥不會飛 企鵝不會飛 直升飛機會飛 用多型來實現 虛方法、抽象類、介面 R:(不確定是不是這樣理解) 有共同行為、共同能力:「飛」,可以用介面interface 麻雀、鸚鵡、鴕鳥、企鵝是鳥類,可以抽出Bird父類 //麻雀會飛 鸚鵡會飛 鴕鳥不會飛 企鵝不會飛 直升飛機會飛 IFlyable fly = new 直升飛機(); //ne...
[C# 筆記][多型] Interface 明確介面實作
明確介面實作 明確介面實作的目的:解決方法重名問題 語法 public class Bird : IFlyable { public void Fly() { Console.WriteLine("鳥會飛"); } /// <summary> /// 明確介面實作 /// </summary> void...
[C# 筆記] draft 超商收銀系統-超市類
/// <summary> /// 超市 /// </summary> internal class SupperMarket { //建立倉庫物件(會直接建立4個貨架) Storehouse storehouse = new Storehouse(); /// <summary> /// 建立超市物件的時候,給倉庫的貨架...
[C# 筆記][多型] Interface 介面的特點 1
介面 Interface 的特點 1 只要一個類別繼承了一個介面,這個類別就必須實現這個介面中的所有成員。 //Person類別繼承IFlyable介面 public class Person : IFlyable { //實作IFlyable介面中所有成員 //注意,實作方法並沒有override,有override叫做重寫 public void Fly() {...
[C# 筆記] 13th
值傳遞 & 引用傳遞 值傳遞:傳遞值的本身(傳值,相當於copy值) 引用傳遞:傳遞的是對物件的引用(傳地址) ref:將值傳遞改變為引用傳遞 僅討論一下值傳遞和引用: 所謂值傳遞,就是說僅將對象的值傳遞給目標對象,就相當於copy;系統將為目標對象重新開闢一個完全相同的內存空間。 所謂引用,就是說將對象在內存中的地址傳遞給目標對象,就相當於使目標對象和原始...