常用關鍵字 this:1.當前類的物件 2.調用自己的構造函數 base:調用父類的構造函數 new:1.創建對象 2.隱藏父類同名的成員 virtual:標記一個方法是虛方法 abstract:抽象的 override:重寫 interface:介面,介面之間可以多繼承 partial:部分類,用在需要寫兩個相同的類別 sealed:密封類,不允許被繼...
[C# 筆記] Protected 存取修飾符
public: 任何人都可以存取使用 private: 只有自身類別才能存取使用 protected: 只有自身類別與子類別才能存取使用 (只要是繼承關係,不管兩者是否在同一程序集中,子類都有訪問父類的權限) class Program { static void Main(string[] args) { //protected成員除了當前...
[C# 筆記] 訪問修飾符(存取修飾詞)-複習
存取修飾詞 public 公開的、公共的 private 私有的,只能在當前類的內部訪問,類中成員們,如果不加訪問修飾符,默認就是 private procteced 受保護的,可以在當前類的內部訪問,也可以在該類的子類中訪問 internal 在當前專案中都可以訪問。跟 public 一樣,在當前專案中都可以訪問。不同的是,出了這個專案,被修飾public的成員可以訪問,...
[C# 筆記][Serializable] 序列化 & 反序列化 2
.NET 5 個重大變更,其中BinaryFormatter、Formatter 和IFormatter 上的序列化和還原序列化方法已過時。 為什麼要序列化?因為要傳輸數據。 序列化 1. 要將序列化對象(物件)的類,標記為可以被序列化的 [Serializable] public class Person { } 2. 把這個對象(物件)序列化成二進制,用一個流來搞定這件事情 ...
[C# 筆記](int)、Convert.ToInt32、int.Parse、int.TryParse
Convert.ToInt32、(int) 和 int.Parse 三者的區别: Convert.ToInt32適合將 object 類型轉換成 int,例如 Convert.ToInt32(session["rii"]) (int)適合簡單數據類型之間的轉換,有小數時會直接捨去 int.Parse適合將 string 類型轉換成 int類型,例如 int.Parse("99...
[C# 筆記][File] 工資翻倍-練習
案例 對職員工資文件處理,所有人的工資加倍然後輸出到新文件。 文件案例: Ken|3000 Vic|50000 技術要點: 使用 ReadAllLines,因為要一行一行的讀取數據。 使用 WriteAllLines,因為要一行一行的寫入。 使用 .Split分割,並通過第二個參數 RemoveEmptyEntries 去掉空白,以取得數字做工資翻倍。 使...
[C# 筆記][多型] 物件導向計算機 -複習
多態(多型)的語法和用法 實現多態(多型)的三個方法 虛方法virtual 抽象類abstract 接口(介面)interface Q:什麼時候用虛方法virtual? 如果這個父類有意義,能夠創建對象(物件),並且這個方法可以調用的話,可以寫成虛方法。 Q:什麼時候用抽象類abstract? 如果說父類不知道如何實現,方法也不知道怎麼寫,可以用抽象類 案例:物件...
[C# 筆記] 里氏轉換(LSP)-複習
繼承&里氏轉換(LSP) 1. 繼承複習 解決代碼的冗餘,實現多形(多態),增加了代碼的擴展素,便於維護。 繼承有兩個很重要的特性: 單根性 傳遞性 單根性 單根性指的是,一個類只能有一個父類,所以我們說,類是單繼承的,誰是多繼承的?介面(接口),介面才能多繼承。 類別:單繼承;介面:多繼承 傳遞性 子類可以使用父類的成員,一個類繼承了一個父類,繼承...
[C# 筆記] File類、Path類、Directory類-複習
Path類 ChangeExtension Path.ChangeExtension只是操作字串,不會真的給文件改副檔名 string path = @"C:\Users\rivalin\Desktop\temp.txt"; string s = Path.ChangeExtension(path, ".jpg"); Console.WriteLine(s); //輸出:C:\Users\r...
[C# 筆記] 物件導向(面向對象)語法和繼承-複習
TODO: 單例模式,只能創建一個物件(對象) 物件導向(面向對象)的複習 封裝、繼承、多型(多態) Class類別的成員 Class類別的成員:屬性、欄位/字段、構造函數、方法、介面/接口 Field(欄位/字段):儲存數據,訪問修飾符應該設置為private私有的。 屬性:保護Field(欄位/字段),對Field的取值和賦值進行限定。 internal c...