溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

常用的C#關(guān)鍵字詳解

發(fā)布時(shí)間:2021-09-10 17:15:52 來(lái)源:億速云 閱讀:147 作者:chen 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容主要講解“常用的C#關(guān)鍵字詳解”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“常用的C#關(guān)鍵字詳解”吧!

類型

Void

用作方法的返回類型時(shí),void 關(guān)鍵字指定方法不返回值。

在方法的參數(shù)列表中不允許使用 void。采用以下形式聲明一個(gè)無(wú)參數(shù)的、不返回值的方法:

Ovid SampleMethod();

Var

在方法范圍中聲明的變量可以具有隱式類型 var。隱式類型的本地變量是強(qiáng)類型變量(就好像您已經(jīng)聲明該類型一樣),但由編譯器確定類型。 有返回值

引用類型

Class

類是使用關(guān)鍵字 class 聲明的

委托

委托類型的聲明與方法簽名相似,有一個(gè)返回值和任意數(shù)目任意類型的參數(shù):
public delegate void TestDelegate(string message);

public delegate int TestDelegate(MyType m, long num);

delegate 是一種可用于封裝命名或匿名方法的引用類型。委托類似于 C++ 中的函數(shù)指針;但是,委托是類型安全和可靠的。

接口

接口只包含方法、屬性、事件或索引器的簽名。成員的實(shí)現(xiàn)是在實(shí)現(xiàn)接口的類或結(jié)構(gòu)中完成的

Object

object 類型在 .NET Framework 中是 Object 的別名。在 C# 的統(tǒng)一類型系統(tǒng)中,所有類型(預(yù)定義類型、用戶定義類型、引用類型和值類型)都是直接或間接從 Object 繼承的??梢詫⑷魏晤愋偷闹蒂x給 object 類型的變量。將值類型的變量轉(zhuǎn)換為對(duì)象的過(guò)程稱為“裝箱”。將對(duì)象類型的變量轉(zhuǎn)換為值類型的過(guò)程稱為“取消裝箱”。

String

string 類型表示零或更多 Unicode 字符組成的序列。string 是 .NET Framework 中 String 的別名。

盡管 string 是引用類型,但定義相等運(yùn)算符(== 和 !=)是為了比較 string 對(duì)象(而不是引用)的值。這使得對(duì)字符串相等性的測(cè)試更為直觀。

修飾符

Override

要擴(kuò)展或修改繼承的方法、屬性、索引器或事件的抽象實(shí)現(xiàn)或虛實(shí)現(xiàn),必須使用 override 修飾符。

Virtual

virtual 關(guān)鍵字用于修飾方法、屬性、索引器或事件聲明,并使它們可以在派生類中被重寫。例如,此方法可被任何繼承它的類重寫。

volatile

volatile 關(guān)鍵字指示一個(gè)字段可以由多個(gè)同時(shí)執(zhí)行的線程修改。聲明為 volatile 的字段不受編譯器優(yōu)化(假定由單個(gè)線程訪問(wèn))的限制。這樣可以確保該字段在任何時(shí)間呈現(xiàn)的都是最新的值。

unsafe

unsafe 關(guān)鍵字表示不安全上下文,該上下文是任何涉及指針的操作所必需的。

static

使用 static 修飾符聲明屬于類型本身而不是屬于特定對(duì)象的靜態(tài)成員。static 修飾符可用于類、字段、方法、屬性、運(yùn)算符、事件和構(gòu)造函數(shù),但不能用于索引器、析構(gòu)函數(shù)或類以外的類型。

sealed

當(dāng)對(duì)一個(gè)類應(yīng)用 sealed 修飾符時(shí),此修飾符會(huì)阻止其他類從該類繼承。在下面的示例中,類 B 從類 A 繼承,但是任何類都不能從類 B 繼承。

readonly

readonly 關(guān)鍵字是可以在字段上使用的修飾符。當(dāng)字段聲明包括 readonly 修飾符時(shí),該聲明引入的字段賦值只能作為聲明的一部分出現(xiàn),或者出現(xiàn)在同一類的構(gòu)造函數(shù)中。

extern

extern 修飾符用于聲明在外部實(shí)現(xiàn)的方法。extern 修飾符的常見(jiàn)用法是在使用 Interop 服務(wù)調(diào)入非托管代碼時(shí)與 DllImport 屬性一起使用。在這種情況下,還必須將方法聲明為 static

event

event 關(guān)鍵字用于在發(fā)行者類中聲明事件。

const

const 關(guān)鍵字用于修改字段或局部變量的聲明。它指定字段或局部變量的值是常數(shù),不能被修改。

abstract

abstract 修飾符可以和類、方法、屬性、索引器及事件一起使用。在類聲明中使用 abstract 修飾符以指示某個(gè)類只能是其他類的基類。標(biāo)記為抽象或包含在抽象類中的成員必須通過(guò)從抽象類派生的類來(lái)實(shí)現(xiàn)。

訪問(wèn)修飾符

internal

internal 關(guān)鍵字是類型和類型成員的訪問(wèn)修飾符。只有在同一程序集的文件中,內(nèi)部類型或成員才是可訪問(wèn)的

private

private 關(guān)鍵字是一個(gè)成員訪問(wèn)修飾符。私有訪問(wèn)是允許的最低訪問(wèn)級(jí)別。私有成員只有在聲明它們的類和結(jié)構(gòu)體中才是可訪問(wèn)的

protected

protected 關(guān)鍵字是一個(gè)成員訪問(wèn)修飾符。受保護(hù)成員在其所在的類中可由派生類實(shí)例訪問(wèn)。

public

public 關(guān)鍵字是類型和類型成員的訪問(wèn)修飾符。公共訪問(wèn)是允許的最高訪問(wèn)級(jí)別。

abstract 可以和類、方法、屬性、索引器及事件一起使用,
標(biāo)識(shí)一個(gè)可以擴(kuò)展但不能被實(shí)體化的、必須被實(shí)現(xiàn)的類或方法。

as 一個(gè)轉(zhuǎn)換操作符,如果轉(zhuǎn)換失敗,就返回null。

base 用于訪問(wèn)被派生類或構(gòu)造中的同名成員隱藏的基類成員。

catch 定義一個(gè)代碼塊,在特定類型異常拋出時(shí),執(zhí)行塊內(nèi)代碼。
參見(jiàn)try和finally。

checked 既是操作符又是語(yǔ)句。
確保編譯器運(yùn)行時(shí),檢查整數(shù)類型操作或轉(zhuǎn)換時(shí)出現(xiàn)的溢出。

const 標(biāo)識(shí)一個(gè)可在編譯時(shí)計(jì)算出來(lái)的變量值,即一經(jīng)指派不可修改的值。

delegate 指定一個(gè)聲明為一種委托類型。委托把方法封裝為可調(diào)用實(shí)體,
能在委托實(shí)體中調(diào)用。

enum 表示一個(gè)已命名常量群集的值類型。

event 允許一個(gè)類或?qū)ο筇峁┩ㄖ某蓡T,他必須是委托類型。

explicit 一個(gè)定義用戶自定義轉(zhuǎn)換操作符的操作符,
通常用來(lái)將內(nèi)建類型轉(zhuǎn)換為用戶定義類型或反向操作。
必須再轉(zhuǎn)換時(shí)調(diào)用顯示轉(zhuǎn)換操作符。

extern 標(biāo)識(shí)一個(gè)將在外部(通常不是c#語(yǔ)言)實(shí)現(xiàn)的方法。

finally 定義一個(gè)代碼塊,在程序控制離開(kāi)try代碼快后執(zhí)行。參見(jiàn)try和catch。

fixed 在一個(gè)代碼塊執(zhí)行時(shí),在固定內(nèi)存位置為一個(gè)變量指派一個(gè)指針。

foreach 用于遍歷一個(gè)群集的元素。

goto 一個(gè)跳轉(zhuǎn)語(yǔ)句,將程序執(zhí)行重定向到一個(gè)標(biāo)簽語(yǔ)句。

implicit 一個(gè)操作符,定義一個(gè)用戶定義的轉(zhuǎn)換操作符。
通常用來(lái)將預(yù)定義類型轉(zhuǎn)換為用戶定義類型或反向操作。
隱式轉(zhuǎn)換操作符必須在轉(zhuǎn)換時(shí)使用。

interface 將一個(gè)聲明指定為接口類型,即實(shí)現(xiàn)類或構(gòu)造必須遵循的合同。

internal 一個(gè)訪問(wèn)修飾符。

namespace 定義一個(gè)邏輯組的類型和命名空間。

operator 用來(lái)聲明或多載一個(gè)操作符。

out 標(biāo)識(shí)一個(gè)參數(shù)值會(huì)受影響的參數(shù),但在傳入方法時(shí),
該參數(shù)無(wú)需先初始化。

params 聲明一個(gè)參數(shù)數(shù)組。如果使用,必須修改指定的最后一個(gè)參數(shù)。
允許可選參數(shù)。

readonly 標(biāo)識(shí)一個(gè)變量的值在初始化后不可修改。

ref 標(biāo)識(shí)一個(gè)參數(shù)值可能會(huì)受影響的參數(shù)。

sealed 防止類型被派生,防止方法和property被覆載。

sizeof 一個(gè)操作符,以byte為單位返回一個(gè)值類型的長(zhǎng)度。

stackalloc 返回在堆上分配的一個(gè)內(nèi)存塊的指針。

struct struct是一種值類型,可以聲明常量、字段、方法、property、
索引器、操作符、構(gòu)造器和內(nèi)嵌類型。

throw 拋出一個(gè)異常。

try 異常處理代碼塊的組成部分之一。try代碼塊包括可能會(huì)
拋出異常的代碼。參閱catch和finally關(guān)鍵字。

typeof 一個(gè)操作符,返回傳入?yún)?shù)的類型。

unchecked 禁止溢出檢查。

unsafe 標(biāo)注包含指針操作的代碼塊、方法或類。

using 當(dāng)用于命名空間時(shí),using關(guān)鍵字允許訪問(wèn)該命名空間中的類型,
而無(wú)需指定其全名。也用于定義finalization操作的范圍。
virtual 一個(gè)方法修飾符,標(biāo)識(shí)可被覆載的方法。

volatile 標(biāo)識(shí)一個(gè)可被操作系統(tǒng)、某些硬件設(shè)備或并發(fā)線程修改的attribute。

一般的構(gòu)造函數(shù)總是public類型的,如果是private類型的,表明類不能被實(shí)例化,這通常用于只含有靜態(tài)的成員的類。

在派生類中聲明對(duì)虛方法的重載,要求在聲明中加上override關(guān)鍵字,而且不能有new,static或virtual修飾符。

密封類在聲明中使用sealed修飾符,這樣就可以防止該類被其它類繼承。

到此,相信大家對(duì)“常用的C#關(guān)鍵字詳解”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI