//列舉
public enum language
public enum myenum : int
陣列是有序的,列舉enum是無序的。
結構struct是值型別。用來封裝小型相關變數組。結構可以繼承介面,不嫩被繼承,不能繼承類。
結構還可以包含
建構函式、常量
、字段、方法
、屬性、索引器
、運算子、事件
和巢狀型別
,但如果同時需要上述幾種成員,則應當考慮改為使用類作為型別。
類和結構的區別
1 類是引用型別 結構是值型別
2 類可以繼承 結構不能繼承
3 類有預設的建構函式 結構沒有預設的不帶引數的建構函式
在以下情況下,鑑於效能上的考慮,我們應該考慮使用struct來代替class:實現乙個主要用於儲存資料的結構時,可以考慮struct。 struct變數占有堆疊的空間,因此只適用於資料量相對小的場合。 結構陣列具有更高的效率。 提供某些和非託管**通訊的相容性。
普通類和抽象類
相同:都能繼承介面和抽象類。因為抽象類也能包含方法的實體
區別:抽象類可以有抽象方法,普通類不能有;
類和介面
共同:都可以從多個介面繼承
區別:1.類只能繼承乙個類。介面可以同時繼承自多個介面。
2。介面不能例項化(因為不能包含建構函式)
3.繼承乙個介面必須實現其所有的方法
抽象類和介面:
相同:1都不能例項化 2.都必須實現其所有的抽象方法
區別:1.類只能繼承乙個類。介面可以同時繼承自多個介面。
2.抽象類可以有方法體,抽象類不能喲方法體,不能包含方法的具體實現。
3.抽象類的方法可以包含public abstract修飾符,介面不能包含,因為預設就是
4.介面能被有些值型別繼承,但是,類只能作用與引用型別。如:結構可以繼承自介面,但是不能繼承自抽象類和類。
using system;
using system.collections.generic;
using system.linq;
using system.text;
set}
public int age
set
}public bool ***
set
}//建構函式
public classemployee(string name1,int age1,bool ***1)
}#endregion
#region 結構
struct structemployee
set}
public int age
set}
public bool ***
set}
//建構函式
public structemployee(string name1, int age1, bool ***1)
//static void main(string args)//}
#endregion
struct structemployee2 : jiekou
}#region 抽象類
public abstract class abstractclass:jiekou
set}
public int age
set
}public bool ***
set
}//不能被例項化,所以不能有建構函式
protected string getmsg(string msg)
protected abstract string getmsg_abstract(string msg);
protected abstract string getmsg_abstract2(string msg);
public void samplemethod()
}#endregion
#region 介面
inte***ce jiekou
public inte***ce jiekou2
#endregion
#region 測試類
public class testclass:abstractclass,jiekou,jiekou2
//必須實現父抽象類的類每個抽象方法
protected override string getmsg_abstract2(string msg)
//不需要override關鍵字 同樣必須實現介面每個方法
public void samplemethod()
static void main(string args)
}#endregion
}
類VS介面VS抽象類
size large align center 類vs介面vs抽象類 align size 一 類例項 public class student 二 介面 例項 public inte ce student 三 抽象類 例項 public inte ce student 四 分析 從形式上來看,抽象...
java學習筆記 介面VS抽象類
介面抽象類 對誰抽象 對動作的抽象 對根源的抽象 方法只能做方法申明 方法申明,也可以做方法實現 變數定義的變數只能是公共的靜態的常量 普通變數 子類是否需要全部實現 實現介面的時候,如不能全部實現介面方法,那麼該類也只能為抽象類。抽象方法必須全部被子類所實現,如果子類不能全部實現父類抽象方法,那麼...
VS 類快捷鍵
生成類的建構函式 輸入 ctrl,按兩下 tab 鍵 快速新增屬性 輸入prop,按2下tab鍵 新增摺疊 輸入reg,按2下tab鍵,快速輸入 region 輸入class,按下2次tab建,快速輸入類定義 定義乙個類,滑鼠放到ihttphandler上,點 顯示可能修補程式 實現介面就自動生成了...