1.子類別如果繼承父類別,沒有選擇建構子是要實作那個父類別的建構子 預設會給它沒有方法那個

2..Net framework 會先建構父類別再建構子類別,
new子類時預設會先訪問父類中的「空建構式」,如果父類別沒有空建構式,
子類別必需明確指定使用哪一個父類別的建構式,如:base(1),初始化的動作要先完成
,否則子類跟本就不知要如何初始化,也無法得知自己繼承了哪些方法

小豆干 發表在 痞客邦 留言(1) 人氣()

通過base關鍵字訪問基類的成員:

1.調用基類上已被其他方法重寫的方法。
2.指定創建派生類實例時應調用的基類構造函數。
3.基類訪問只能在構造函數、實例方法或實例屬性訪問器中進行。
4.從靜態方法中使用 base 關鍵字是錯誤的。

小豆干 發表在 痞客邦 留言(0) 人氣()

繼承 (Inheritance) 和封裝 (Encapsulation) 以及多型 (Polymorphism)
並稱物件導向程式設計的三個主要特性

繼承可讓您建立新類別 (Class) 以重複使用、擴充和修改其他類別中定義的行為。
成員被繼承的類別稱為「基底類別」(Base Class),
而繼承這種成員的類別即稱為「衍生類別」(Derived Class)。

小豆干 發表在 痞客邦 留言(0) 人氣()

可以直接參考此篇

http://sweetkikibaby.pixnet.net/blog/post/191604600 

簡要重點:

1.以傳值方式傳遞參考型別(陣列)

在方法內直接針對元素值arr[i]做修改,會連原始的陣列值也被修改

小豆干 發表在 痞客邦 留言(0) 人氣()

1.以傳值方式傳遞參考型別

以「傳值方式」傳遞參考型別參數時,傳的是參數的位址
它有可能會變更到參考指到的資料,例如類別成員的值。

您無法變更「參考」本身的值;不能指向別的記憶體區塊

以陣列為例,雖然是傳值,但其實傳的是位址,若在方法內直接修改元素仍然會異動到原本呼叫端陣列的值

小豆干 發表在 痞客邦 留言(0) 人氣()

未命名

1.以傳值方式傳遞實質型別

「傳值呼叫」是指當呼叫方法時,呼叫方法的實引數會複製一份給被呼叫方法的虛引數
所以實引數和虛引數佔用不同的記憶體位址。
當被呼叫方法內的參數的任何變更並不會影響到變數原本的值。
C#預設為傳值呼叫,可保護變數不被修改

小豆干 發表在 痞客邦 留言(0) 人氣()

我們可以使用兩種方式來宣告常數,const (C# 參考)、readonly (C# 參考)。


1.編譯時期常數const(靜態常數)
public const int End = 10;

2.執行階段常數readonly(動態常數)

小豆干 發表在 痞客邦 留言(0) 人氣()

1.結構宣告內不能初始化欄位(宣告時直接指定值)
,除非將其宣告為 const 或 static。
初始化要在建構子中完成。
若 struct 中的變數還沒有進行初始化(指定值),也不能直接使用,要先初始化(指定值)才行

例:

小豆干 發表在 痞客邦 留言(0) 人氣()

    private 
    只能在自己類別中存取。
    protected 
    只能在自己類別與子類別中存取。
    internal 

小豆干 發表在 痞客邦 留言(0) 人氣()

陣列常用屬性

int[] a1 = new int[3];
int[,] a2 = new int[3, 4];//3樓4戶(三列四行)
//1.Length屬性--取得陣列中陣列元素的個數
Response.Write("a1的Length是:" + a1.Length);//輸出3

小豆干 發表在 痞客邦 留言(0) 人氣()

1

建立三維陣列的方法

/*方法1*/
//不指定維度
int[, ,] a = new int[, , ]
{

小豆干 發表在 痞客邦 留言(0) 人氣()

建立二維陣列的方法

型別[ , ] 陣列名稱 = new 型別[列數,行數];
型別[ , ] 陣列名稱 = new 型別[列數, 行數] { { , , ,} , { , , , } };
型別[ , ] 陣列名稱 = new 型別[ , ] { { , , ,} , { , , , } };
型別[ , ] 陣列名稱 = { { , , ,} , { , , , } };

小豆干 發表在 痞客邦 留言(0) 人氣()

1 2
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。