C 基礎知識點梳理二

2022-02-02 00:14:26 字數 2596 閱讀 4433

上次我們講的是一些c#前面的基礎知識,一些比較重要的索引委託事件介面泛型將會接下來慢慢講解,這也是乙個自我複習的過程,嗯對,就是這樣的。

先來 深入理解類,掌握一些類的使用方法和特性。

靜態字段:被類的所有例項共享,所有例項都訪問記憶體的同一位置,直接使用點運算子就可以訪問公共類的例項成員哦,d.mem2 = 5;

條件運算子: value>100  ? 100:value  由乙個判斷確認bool值,條件為真選擇前面,條件為假選擇後面的,三元運算子。

例項建構函式:用於初始化類的例項狀態,名稱與類名相同,不能有返回值,可以帶引數,可以被過載。沒有顯式,宣告會有隱式的預設建構函式。

靜態建構函式:類只能有乙個靜態建構函式,不能帶引數,不能有訪問修飾符,其他同上哦。

析構函式:執行在類的例項被銷毀之前需要的清理或釋放非託管資源的行為(通過win32 api獲得的檔案控制代碼,或非託管記憶體塊)。

this關鍵字:只能用在(例項建構函式,例項方法,屬性和索引器的例項訪問器)這些類成員的**塊中,目的是為了用於區分類的成員和本地變數或引數,作為呼叫方法的實參。

屬性:是一組 set get 訪問器,不分配記憶體,通常表示單個資料成員,例: int  value

索引器:是一組 get set 訪問器,不分配記憶體,通常表示多個資料成員,可以過載,必須使用this關鍵字。例:returntype  this

分布類:每個分布類的宣告都含有一些類成員的宣告,可以在同一檔案中,也可以在不同檔案中,標明 partial class   類似的有區域性結構和區域性介面

分布方法:分布類的內在方法,關鍵字partial ,必須給出簽名和返回型別,返回值為空,簽名不能包括訪問修飾符(隱式私有),內部設定乙個公共方法方便呼叫,宣告和實現分離;宣告=宣告;  實現=宣告

類和繼承

基類和派生類:建立派生類時,派生類名:基類名,呼叫派生類可以使用基類的方法。例項化繼承類可以呼叫基類和繼承類的方法。類只能單繼承,使用new關鍵字可以遮蔽基類成員(同型別名稱)(可使用base.成員名訪問),也可以遮蔽靜態成員,但是編譯器會警告。

建構函式的執行:每個類在執行自己的建構函式之前執行它自己的構造體函式之前執行它的基類建構函式:base關鍵字指明使用哪乙個基類的建構函式,:this指明使用哪乙個類

抽象成員:使用abstract關鍵字,必須是基類且被覆寫的函式成員,(屬性,方法,索引,事件)不包含實現**塊。不能例項化,抽象類包含抽象方法,派生類覆寫抽象類和抽象方法

密封類:關鍵字 sealed   獨立的類,不能用作基類

靜態類: 所有成員必須是靜態的,可以有乙個靜態建構函式,不能有例項建構函式,不能建立該類的例項,隱式密封,不能繼承

擴充套件方法:允許編寫的方法和宣告它的類之外的類關聯。宣告擴充套件方法的類必須static,擴充套件方法本身必須是靜態的,引數列表=this + 擴充套件類的名稱,可用原方法直接呼叫擴充套件方法

表示式和運算子和using語句

條件運算子:?:對乙個表示式求值,bool真假選擇前後值之一

隱式轉換和強制轉換:limitedint li = (limitedint)500;

運算子過載,typeof運算子,列印公有欄位和方法名稱 type t = typeof(someclass)  .getfield  .getmethod

using語句:using指令引用命名空間和using語句包裝資源的使用不一樣,using (resouretype identifier = expresssion)statement  分配資源  使用資源

結構:結構是值型別,隱式密封,可以被過載,變數不為空,不能初始化字段,不能引用同一物件,可以有例項建構函式和靜態建構函式,不能有析構函式,struct structname

列舉:列舉是值型別,enum trafficlight      :ulong 跟在列舉名後面可以設定底層型別,位標誌,不能對成員使用修飾符,不能比較不同型別的列舉

陣列:陣列是乙個變數名稱表示的一組同型別的資料元素,一旦建立,大小固定,宣告和初始化,交錯陣列(不能在宣告初始化語句中初始化頂層陣列之外的陣列),後續按維度初始化,foreach語句迴圈輸出陣列,陣列協變(不是陣列型別也可以賦值給陣列元素),陣列轉殖,   一維,矩形,多維,交錯

委託:匿名方法:初始化委託時內聯宣告的方法,delegate(parameters) 引數及匿名方法的實現限制在方法體內

lambda表示式:刪除delegate關鍵字, 引數列表和主體間放置=>符號

事件:  高階事件訪問器

事件就像是專門用於某種特殊用途的簡單委託,事件包含了乙個私有化委託,無法直接訪問委託,對於事件只能新增刪除,呼叫事件處理程式,+= 和 -=是唯一允許的操作, 

public event eventhandler countedadozen,宣告委託,類,建立事件,觸發事件及結果,訂閱事件,宣告事件處理程式。標準事件採用系統預定義委託。擴充套件系統預定義泛型委託

介面:介面是指定一組函式成員而不實現他們的引用型別。介面必須全部實現,乙個方法可以實現多個介面。介面可以繼承介面。

轉換:隱式轉換,顯式轉換和強制轉換,裝箱拆箱,is只可用於裝箱拆箱,不能用於使用者自定義,as不丟擲異常,轉換失敗為空。

泛型:讓多個型別,共享一組**。(類,結構,介面,委託,和方法),泛型介面實現必須唯一

協變:可將派生類的物件例項賦值給基類變數

逆變:可將基類的物件例項賦值給派生類變數

JS基礎知識點梳理

1.資料型別 ecmascript有五種簡單 基本 資料型別,分別是undefined,null,boolean,number,string,還有一種複雜資料型別object。物件可以理解成一組資料和功能的集合。可以通過new object 方法來建立。js不支援自己建立資料型別。鑑於資料型別是鬆散...

Jquery基礎知識點梳理

1 第乙個jq程式 a jq物件和dom物件的方法不能混用 b dom物件轉換成jq物件 dom jq物件轉換成dom物件jq 0 轉換之後方法就可以使用了 2 jq選擇器 基本選擇器 body 標籤選擇器 btn id選擇器 class 類選擇器 p odd 奇偶行選擇器 p even p fir...

C 基礎知識點(二)

類的作用或概念 用來描述一組具有相似屬性的東西的物件的一種資料結構。類中有資料成員的宣告和定義,有成員函式的實現 物件就是類的例項化。計算機要想使用類,只能進行例項話。stl是標準庫模板,由容器演算法迭代器組成。stl優點 1.可以很方便的對一堆資料庫進行排序 呼叫sort 2.stl是跨平台的,在...