一.委託:
1.概念:就是乙個命令。委託只是儲存了各個方法的位址,而他自己也是什麼也不做的。
2.關鍵字:delegate
3.例子: //
小張類
public class mrzhang
}
//小明類
class mrming
} 4.委託的引數和返回型別,都要和你要具體委託的方法要一致,例:
public
delegate
void
bugticket
eventhandler
();
public
static
void
buyticket()
二、委託鏈:
1.概念: 其實委託鏈也是相當的簡單,在現實生活中,小明叫小張買完車票之後,可能接著又讓他帶張電影票
2.例子:
//小張類
public
class
mrzhang
public
static
void
buymovieticket()}//
小明類class
mrming
}
三、事件:
四、關鍵字:
1.object:
介面只包含方法、屬性、事件或索引器的「
簽名」。成員的實現是在實現介面的類或結構中完成的。
object 型別在 .net framework 中是 object 的別名。在 c# 的統一型別系統中,所有型別(預定義型別、使用者定義型別、引用型別和值型別)都是直接或間接從 object 繼承的。可以將任何型別的值賦給 object 型別的變數。將值型別的變數轉換為物件的過程稱為「裝箱」。將物件型別的變數轉換為值型別的過程稱為「取消裝箱」。
2.override:
要擴充套件或修改繼承的方法、屬性、索引器或事件的抽象實現或虛實現,必須使用 override 修飾符。
3.virtual:
virtual 關鍵字用於修飾方法、屬性、索引器或事件宣告,並使它們可以在派生類中被重寫。例如,此方法可被任何繼承它的類重寫。
4.sealed:
當對乙個類應用 sealed 修飾符時,此修飾符會阻止其他類從該類繼承。在下面的示例中,類 b 從類 a 繼承,但是任何類都不能從類 b 繼承。
5.readonly:
在字段上使用的修飾符。c#引入了readonly修飾符來表示唯讀域,const來表示不變常量。顧名思義對唯讀域不能進行寫操作,不變常量不能被修改,這兩者到底有什麼區別呢?唯讀域只能在初始化--宣告初始化或構造器初始化--的過程中賦值,其他地方不能進行對唯讀域的賦值操作,否則編譯器會報錯。唯讀域可以是例項域也可以是靜態域。唯讀域的型別可以是c#語言的任何型別。但const修飾的常量必須在宣告的同時賦值,而且要求編譯器能夠在編譯時期計算出這個確定的值。const修飾的常量為靜態變數,不能夠為物件所獲取。
6.extern:
在方法宣告中使用extern
修飾符支援在外部實現方法。
外部修飾符的常見用法是:在使用
interop
服務調入
非託管**
時與dllimport
屬性一起使用;在這種情況下,該方法還必須宣告為
static
,如下面的示例所示:
using system;
using system.runtime.interopservices;
//引用外部
namespace
extern
[dllimport("kernel32",setlasterror =true)]//宣告和實現的連線
public static extern intgetcurrentdirectory(int a, stringbuilderb);//外部方法
privatevoidb***isplay_click(objectsender, eventargs e)
}}
7.event:關鍵字用於在發行者類中宣告事件。
8.abstract:修飾符可以和類、方法、屬性、索引器及事件一起使用。在類宣告中使用 abstract 修飾符以指示某個類只能是其他類的基類。標記為抽象或包含在抽象類中的成員,必須通過從抽象類的派生的類來實現。
9.internal:訪問修飾符,
關鍵字是型別和型別成員的訪問修飾符。只有在同一程式集的檔案中,內部型別或成員才是可訪問的。
10.as:乙個轉換操作符,如果轉換失敗,就返回null。
11.checked:既是操作符又是語句。
確保編譯器執行時,檢查整數型別操作或轉換時出現的溢位。
12.explicit:使用者自定義轉換操作符的操作符,
通常用來將內建型別轉換為使用者定義型別或反向操作。
必須再轉換時呼叫顯示轉換操作符。
學習C 第一天
常用的 include include中 定義了流控制符,來控制資料的輸出格式 dec hex oct 分別為十進位制 十六進製制 八進位制 setw n 輸出域寬為n setfill c 在給定的輸出寬度內,填充字元c 等 例 cout如 上面的第二句,同樣以十六進製制嗎,填充 的方式輸出。內斂函...
c 學習 第一天
折騰了一天,終於知道了我對linux一竅不通,連個軟體都不會裝,誰會相信我四個月後會是怎樣。知道了兩個命令 sudo apt get install vim 安裝vim編輯器 sudo apt get install build essential 安裝gcc和gdb 儲存為hello.cpp,在g...
c 學習第一天
c 是乙個物件導向的語言。本人使用時使用的是centos7系統 首先centos7中自帶有c 的庫以及編譯器 標頭檔案所在目錄 ust include c 版本號 首先第乙個坑 輸出 c中stdin.h中有printf函式 c 中需要用到cout函式語法如下 std cout 變數或字串 std e...