1、示例C#程序代碼
下面是一個簡單的代碼,該代碼將打印輸出Hello World
。
MyClass.cs
using System;namespace HelloWorld{ class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } }}
示例說明
用C#運行的每一行代碼都必須在class
內。在我們的示例中,我們將類命名為Program
。類應始終以大寫首字母開頭。
注意:C#區分大小寫:MyClass 和 myclass 具有不同的含義。
和Java不一樣,C#文件的名稱必須不是必須和類名稱相同。 保存文件時,需要使用類名保存并在文件名的末尾添加 .cs。 要在計算機上運行上面的示例,要確保安裝了VS(Microsoft Visual Studio),有關如何安裝VS及執行C#代碼方法,可以參考C# 入門教程,輸出應為:
Hello World
2、Main方法
Main()
方法是必需的,將在每個C#程序中看到它:
static void Main(string[] args)
Main()
方法中的任何代碼都將執行。 每個C#控制臺程序都有一個class
類名,并且每個程序都必須包含Main()
方法。
3、 Console.WriteLine()
在Main()
方法內部,我們可以使用WriteLine()方法在屏幕上打印輸出一行文本:
static void Main(string[] args){ Console.WriteLine("Hello World!"); }
注意:大括號{}
標記代碼塊的開始和結束。每個代碼語句必須以分號結尾。
4、基本語法
關于C#程序,以下幾點基本方法非常重要:
大小寫敏感:C# 是大小寫敏感的,這就意味著標識符 Hello 與 hello 是不同的。
類名:對于所有的類來說,類名的首字母應該大寫。如果類名由若干單詞組成,那么每個單詞的首字母應該大寫,例如 MyFirstClass 。
方法名:所有的方法名都應該以小寫字母開頭。如果方法名含有若干單詞,則后面的每個單詞首字母大寫。
源文件名:文件名的后綴為 .cs。
主方法入口:所有的C# 程序由 public static void Main(String[] args)
方法開始執行。
5、C# 關鍵字
下面列出了C# 關鍵字。這些保留字不能用于常量、變量、和任何標識符的名稱。
1)保留關鍵字
abstract | as | base | bool | break | byte | case | |
catch | char | checked | class | const | continue | decimal | |
default | delegate | do | double | else | enum | event | |
explicit | extern | false | finally | fixed | float | for | |
foreach | goto | if | implicit | in | in (generic modifier) | int | |
interface | internal | is | lock | long | namespace | new | |
null | object | operator | out | out (generic modifier) | override | params | |
private | protected | public | readonly | ref | return | sbyte | |
sealed | short | sizeof | stackalloc | static | string | struct | |
switch | this | throw | true | try | typeof | uint | |
ulong | unchecked | unsafe | ushort | using | virtual | void | |
volatile | while |
2)上下文關鍵字
add | alias | ascending | descending | dynamic | from | get | |
global | group | into | join | let | orderby | partial (type) | |
partial (method) | remove | select | set |
3)解釋說明
void | 用作方法的返回類型時, void關鍵字指定方法不返回值。 在方法的參數列表中不允許使用 void。 采用以下形式聲明一個無參數的、不返回值的方法: |
Var | 在方法范圍中聲明的變量可以具有隱式類型 var。 隱式類型的本地變量是強類型變量(就好像您已經聲明該類型一樣), 但由編譯器確定類型。 有返回值 |
Class | 類是使用關鍵字 class 聲明的 |
delegate | 是一種可用于封裝命名或匿名方法的引用類型。 委托類似于 C++ 中的函數指針;但是, 委托是類型安全和可靠的。 |
object | 類型在 .NET Framework 中是 Object 的別名。在 C#的統一類型系統中, 所有類型(預定義類型、用戶定義類型、引用類型和值類型) 都是直接或間接從 Object 繼承的??梢詫⑷魏晤愋偷闹蒂x給 object 類型的變量。將值類型的變量轉換為對象的過程稱為“裝箱”。 將對象類型的變量轉換為值類型的過程稱為“取消裝箱”。 |
string | 類型表示零或更多 Unicode 字符組成的序列。 string 是 .NET Framework 中 String 的別名。 盡管 string是引用類型,但定義相等運算符(== 和 !=) 是為了比較 string 對象(而不是引用)的值。 這使得對字符串相等性的測試更為直觀。 |
Override | 要擴展或修改繼承的方法、屬性、索引器或事件的抽象實現或虛實現, 必須使用 override 修飾符。 |
virtual | 關鍵字用于修飾方法、屬性、索引器或事件聲明, 并使它們可以在派生類中被重寫。 例如,此方法可被任何繼承它的類重寫。 |
volatile | 關鍵字指示一個字段可以由多個同時執行的線程修改。 聲明為 volatile的字段不受編譯器優化 (假定由單個線程訪問)的限制。 這樣可以確保該字段在任何時間呈現的都是最新的值。 |
unsafe | 關鍵字表示不安全上下文, 該上下文是任何涉及指針的操作所必需的。 |
static | 使用 static 修飾符聲明屬于類型本身 而不是屬于特定對象的靜態成員。 static修飾符可用于類、字段、方法、屬性、運算符、 事件和構造函數,但不能用于索引器、 析構函數或類以外的類型。 |
sealed | 當對一個類應用 sealed 修飾符時, 此修飾符會阻止其他類從該類繼承。在下面的示例中, 類 B 從類 A 繼承,但是任何類都不能從類 B 繼承。 |
readonly | 關鍵字是可以在字段上使用的修飾符。 當字段聲明包括 readonly修飾符時, 該聲明引入的字段賦值只能作為聲明的一部分出現, 或者出現在同一類的構造函數中。 |
extern | 修飾符用于聲明在外部實現的方法。 extern 修飾符的常見用法是在使用 Interop 服務調入非托管代碼時與 DllImport 屬性一起使用。在這種情況下, 還必須將方法聲明為 static |
event | 關鍵字用于在發行者類中聲明事件。 |
const | 關鍵字用于修改字段或局部變量的聲明。 它指定字段或局部變量的值是常數,不能被修改。 |
abstract | 修飾符可以和類、方法、屬性、索引器及事件一起使用。 在類聲明中使用 abstract 修飾符以指示某個類只能是其他類的基類。 標記為抽象或包含在抽象類中的成員必須通過從抽象類派生的類來實現。 |
internal | 關鍵字是類型和類型成員的訪問修飾符。 只有在同一程序集的文件中,內部類型或成員才是可訪問的 |
private | 關鍵字是一個成員訪問修飾符。私有訪問是允許的最低訪問級別。 私有成員只有在聲明它們的類和結構體中才是可訪問的 |
protected | 關鍵字是一個成員訪問修飾符。 受保護成員在其所在的類中可由派生類實例訪問。 |
public | 關鍵字是類型和類型成員的訪問修飾符。 公共訪問是允許的最高訪問級別。 |
abstract | 可以和類、方法、屬性、索引器及事件一起使用, 標識一個可以擴展但不能被實體化的、必須被實現的類或方法。 |
as | 一個轉換操作符,如果轉換失敗,就返回null。 |
base | 用于訪問被派生類或構造中的同名成員隱藏的基類成員。 |
catch | 定義一個代碼塊,在特定類型異常拋出時, 執行塊內代碼。參見try和finally。 |
checked | 既是操作符又是語句。確保編譯器運行時, 檢查整數類型操作或轉換時出現的溢出。 |
const | 標識一個可在編譯時計算出來的變量值, 即一經指派不可修改的值。 |
delegate | 指定一個聲明為一種委托類型。 委托把方法封裝為可調用實體,能在委托實體中調用。 |
enum | 表示一個已命名常量群集的值類型。 |
event | 允許一個類或對象提供通知的成員,他必須是委托類型。 |
explicit | 一個定義用戶自定義轉換操作符的操作符, 通常用來將內建類型轉換為用戶定義類型或反向操作。 必須再轉換時調用顯示轉換操作符。 |
extern | 標識一個將在外部(通常不是c#語言)實現的方法。 |
finally | 定義一個代碼塊,在程序控制離開try代碼快后執行。 參見try和catch。 |
fixed | 在一個代碼塊執行時,在固定內存位置為一個變量指派一個指針。 |
foreach | 用于遍歷一個群集的元素。 |
goto | 一個跳轉語句,將程序執行重定向到一個標簽語句。 |
implicit | 一個操作符,定義一個用戶定義的轉換操作符。 通常用來將預定義類型轉換為用戶定義類型或反向操作。 隱式轉換操作符必須在轉換時使用。 |
interface | 將一個聲明指定為接口類型, 即實現類或構造必須遵循的合同。 |
internal | 一個訪問修飾符。 |
namespace | 定義一個邏輯組的類型和命名空間。 |
operator | 用來聲明或多載一個操作符。 |
out | 標識一個參數值會受影響的參數, 但在傳入方法時,該參數無需先初始化。 |
params | 聲明一個參數數組。如果使用, 必須修改指定的最后一個參數。允許可選參數。 |
readonly | 標識一個變量的值在初始化后不可修改。 |
ref | 標識一個參數值可能會受影響的參數。 |
sealed | 防止類型被派生,防止方法和property被覆載。 |
sizeof | 一個操作符,以byte為單位返回一個值類型的長度。 |
stackalloc | 返回在堆上分配的一個內存塊的指針。 |
struct | struct是一種值類型, 可以聲明常量、字段、方法、property、 索引器、操作符、構造器和內嵌類型。 |
throw | 拋出一個異常。 |
try | 異常處理代碼塊的組成部分之一。 try代碼塊包括可能會拋出異常的代碼。 參閱catch和finally關鍵字。 |
typeof | 一個操作符,返回傳入參數的類型。 |
unchecked | 禁止溢出檢查。 |
unsafe | 標注包含指針操作的代碼塊、方法或類。 |
using | 當用于命名空間時,using關鍵字允許訪問該命名空間中的類型, 而無需指定其全名。也用于定義finalization操作的范圍。 |
virtual | 一個方法修飾符,標識可被覆載的方法。 |
volatile | 標識一個可被操作系統、某些硬件設備或并發線程修改的attribute。 |
免責聲明:以上內容(如有圖片或視頻亦包括在內)有轉載其他網站資源,如有侵權請聯系刪除
-
家人死光 四處流浪還染上藥癮 續作開頭就跌入谷底
-
人氣盤點[動漫中10位帥氣父親]:深情又顧家!
-
真太空電影 俄羅斯攝制組將飛往國際空間站拍攝影片
-
硬盤柜也能聯網 配合東芝N300系列NAS硬盤32GB私有云
-
哪里都是我的家!閑置用品難逃“被鳥類筑巢”的命運!
-
《起風了》:宮崎駿同名動畫電影靈感來源,追尋生之絢爛的美好愛情
《起風了》是日本動漫大師宮崎駿執導、獲第86屆奧斯卡金像獎提名的《起風了》原著,是一部跨越生死、打動千萬人的純愛小說,不朽的傳世經典名著。男主人公陪伴身患重病的未婚妻節子,前往深山療養,攜手度過節子人生中最后一段時光。在與世隔絕的八岳山上,他們拋棄俗世的喧囂,生命中只剩下彼此。愛情在這至美之景中愈
-
《APEX英雄》手游3月8日已于海外開測!或為正式上線前最后一測