Home
R
Cancel

[C# 筆記] static 靜態與非靜態

靜態與非靜態的區別 在非靜態類別中,既可以有實體成員(實例成員),也可以有靜態成員。 在調用實體成員的時候,需要使用對象名.實例成員; 在調用靜態成員的時候,需要使用「類別名.靜態成員名」 非靜態類別中,既可以有實例成員,也可以有靜態成員 public class Person { private int num; //實體成員(實例成員) public st...

[C# 筆記] get set 屬性

get set 屬性 屬性的作用就是保護字段,對字段的賦值和取值進行限定。 這幾個名詞要記得 field 字段 method 方法 property 屬性 class Person { private string _name; public string Name { get { return _name; } //當你輸出值的時候,會執行ge...

[C# 筆記] Class 類別

物件導向 物件導向過程 => 物件導向 物件導向過程:物件導向是完成這件事情的過程,強調的是完成這件事情的動作 把大象放到冰箱裡 打開冰箱 把大象塞進去 關閉冰箱門 強調的是過程 class 類別 語法: [public] class 類名 { 字段; //儲存數據 屬性; 方法; } class TestClass { ...

[C# 筆記] Game 飛行棋

跟B站老趙學飛行棋 遊戲規則: 如果玩家A踩到了玩家B 玩家B退6格 踩到了地雷 退6格 踩到了時空隧道 進10格 踩到了幸運輪盤 1.交換位置 2.轟炸對方 使對方退6格 踩到了暫停 暫停一回合 踩到了方塊 神馬都不幹 畫遊戲頭 初始化地圖(加載地圖所需要的資源) 畫地圖 玩遊戰 1.畫遊戲頭 static void ShowGame() { ...

[C# 筆記] function 練習4

練習:計算任意多個數間的最大值(params) params 參數能把元素當作陣列去處理 int max = GetMax(2, 1, 4, 6, 5, 7); //params能把元素當作陣列去處理 Console.WriteLine(max); Console.ReadKey(); //params參數方法 public static int GetMax(params int[] n...

[C# 筆記] function 練習3

練習:輸入成績判斷其等級 接收輸入後,判斷其等級並顯示出來 判斷依據如下: 等級={優 90-100分 良 80-89分} while (true) { Console.WriteLine("請輸入成績"); //提示用戶輸入 int score = Convert.ToInt32(Console.ReadLine()!); //接收用戶輸入 string lev...

[C# 筆記] function 練習2

練習:求一個字串陣列中最長的元素 用方法實現:有一個字串陣列 { “李奧納多”, “馬龍”, “泰勒·斯威夫特”, “湯姆·希德勒斯頓”, “本尼迪克特·康伯巴奇” } 輸出最長的字串 string[] names = { "李奧納多", "馬龍", "泰勒·斯威夫特", "湯姆·希德勒斯頓", "本尼迪克特·康伯巴奇" }; string name = GetLongest(names...

[C# 筆記] function+ref 方法綜合練習

提示用戶輸入兩個數字,計算這兩個數字之間所有的整數和。 用戶只能輸入數字 計算兩個數字之間的和 要求第一數字必須比第二個數字小,失敗就重新輸入 1.用戶只能輸入數字 //限定只能輸入數字 static int GetNmuber(string s) { while (true) { try { int ...

[C# 筆記] Recursion 方法的遞迴

方法的遞迴 方法自己調用自己。 什麼時候會用到遞迴? 找出一個文件夾中所有的文件。 例如:需要一個方法,能夠找到一個指定的文件夾下所有的文件。 就算是遞迴,也是要有個條件跳出來,不然就會變成死循環 TellStory(); //錯誤寫法,死循環 void TellStory() { Console.WriteLine("從前從前"); Console.WriteLin...

[C# 筆記] Overload 方法的重載

方法的重載 概念:方法的重載,指的就是方法的名稱相同,但是參數不同。 參數不同,分為兩種情況: 如果參數的個數相同,那麼參數的類型就不能相同。 如果參數的類型相同,那個參數的個數就不能相同。 方法的重載跟返回值沒有關係 以下沒有構成方法的重載 因為方法名相同,參數個數相同 void SayHello(string name) { Console.Write...