C# - 多維陣列

多維陣列中的元素需要超過一個以上的索引 (編號) 才能指出元素的位置。需要兩個索引的陣列稱為二維陣列,需要三個的稱為三維陣列,以此類推。規則陣列是指每列的陣列元素都相同。 以下是一維、二維、三維陣列的宣告與建立方式,以整數陣列為例: 12345678// 宣告並建立一個長度為 2 的一維陣列int[] A = new int[2];// 宣告並建立一個 4x4 的二維陣列int[,]B=new int[2,3];// 宣告並建立一個 2x3x4的三維陣列int[,,]C=new i...

Read More

C# - Abstract Class & Abstract Method

一個 method 的組成包含: 宣告 內容 (實際執行方式) abstract methodC# 中的 method 主要分成兩個部分,宣告與內容。Abstract method 則是一種只有宣告,而沒有實作內容的一種特殊 method。 abstract method 把實作的工作轉交給繼承的類別來定義。強迫衍生類別實作某些功能 1234567891011121314151617181920212223 private void button1_Click(object sen...

Read More

C# - Constant 常數

常數是一種永存於程式中的定值,不會隨著程式的進行而被修改 C# 中有兩種宣告常數的方式,分別是「const」與「readonly」,分別都是加在變數型別前面 「const」的常數不能同時是 static。 下面的例子是以 const 設定不可修改的 PI 值 1234class Math { public const double PI = 3.14; } readonly 也可使用 static 123456class Mat...

Read More

C# - switch 與 enum

當我們想判斷某些變數的值來決定要做甚麼事情時就常會用到 switch enum 則可以幫助我們定義新的型別並且賦予其有限的值 switch 跟 enum 兩者間常常會一起出現 switch 可以判斷某個變數的值為何,並根據值的內容來做出對應的反應。其語法如下 1234567891011121314151617181920212223public void Move(Direction direction) { switch (directio...

Read More

C# - base 關鍵字

使用 this 關鍵字能存取所屬物件的屬性與方法(指向該物件本身),常用在 method 參數名稱與屬性名稱重複的時候。base 關鍵字也是類似原理,只是 base 存取的對象是基底類別 [問題]繼承的變數與方法若是 public 或 protected 不是本來就可以直接存取嗎? 情境一:用 base 存取基底類別的變數第一種可能使用 base 的狀況,是當衍生類別裡面出現名稱相同的屬性,蛋想要存取的是基底類別而不是衍生類別的屬性,就可以使用 base 來存取。 1234567891...

Read More

C# - protected

只有該 class 的區塊才能存取 private 的資源,就算是衍生的類別也算是外部 12345678910//base class class Monster { private int hp = 100; public int getHp() { return hp; } } protected 關鍵字用來控管不想讓外部隨意使用,但又想讓繼承的 c...

Read More

C# - 產生亂數

產生亂數的話,可以使用 C# 內建的 Random 物件 Random Class 的主要功能就是產生亂數,主要的 method 就是 Next( ),Next( ) 有三種版本:(1) int Next( )沒有參數的版本產生的亂數介於 0 到整數最大值之間 (0~2147483647) (2) int Next(int maxValue)參數為上限產生的亂數介於 0 到 maxValue 之間 (不含 maxValue) (3) int Next(int minValue, int...

Read More

C# - 繼承性

繼承性 (Inheritance) 要使用繼承,需要在定義 class 的時候,在 class 名稱後面加上「:]與被繼承的 class 名稱 例如要使 class A 繼承 class B 123class A:B{ ....} 可讓物件繼承其他物件具有的屬性與行為。 成員被繼承的類別稱為「基底類別」(Base Class),而繼承這種成員的類別即稱為「衍生類別」(Derived Class)。 衍生類別只能有一個基底類別。透過繼承把多個 Class 重複...

Read More

C# - Override 覆寫

讓你改寫繼承到的行為 在原本被改寫的 method 前加上 virtual 在改寫的 methods 加上 override override 的 method 其名稱與參數型別都要跟被 overrid 12345678910//要覆寫的基底類別class Creature { public string name; public virtual string attack(Creature target) { ...

Read More

C# - Get and Set 存取器

語法……… // 宣告變數(通常是 public){ get { …. } // 希望變數讀取時執行的程式碼 set { …. } // 希望數值存入時執行的程式碼} 12345678910111213141516171819202122232425262728293031323334353637383940414243class User { private string Username; private string Passwo...

Read More


Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2020 CYC'S BLOG All Rights Reserved.

UV : | PV :