# C# 程序結構
在我們學習 C# 編程語言的基礎構件塊之前,讓我們先看一下 C# 的最小的程序結構,以便作為接下來章節的參考。
## C# Hello World 實例
一個 C# 程序主要包括以下部分:
* 命名空間聲明(Namespace declaration)
* 一個 class
* Class 方法
* Class 屬性
* 一個 Main 方法
* 語句(Statements)& 表達式(Expressions)
* 注釋
讓我們看一個可以打印出 "Hello World" 的簡單的代碼:
```
using System;
namespace HelloWorldApplication
{
class HelloWorld
{
static void Main(string[] args)
{
/* 我的第一個 C# 程序*/
Console.WriteLine("Hello World");
Console.ReadKey();
}
}
}
```
當上面的代碼被編譯和執行時,它會產生下列結果:
```
Hello World
```
讓我們看一下上面程序的各個部分:
* 程序的第一行 **using System;** - **using** 關鍵字用于在程序中包含 **System** 命名空間。 一個程序一般有多個 **using** 語句。
* 下一行是 **namespace** 聲明。一個 **namespace** 是一系列的類。_HelloWorldApplication_ 命名空間包含了類 _HelloWorld_。
* 下一行是 **class** 聲明。類 _HelloWorld_ 包含了程序使用的數據和方法聲明。類一般包含多個方法。方法定義了類的行為。在這里,_HelloWorld_ 類只有一個 **Main** 方法。
* 下一行定義了 **Main** 方法,是所有 C# 程序的 **入口點**。**Main** 方法說明當執行時 類將做什么動作。
* 下一行 /*...*/ 將會被編譯器忽略,且它會在程序中添加額外的 **注釋**。
* Main 方法通過語句 **Console.WriteLine("Hello World");** 指定了它的行為。
_WriteLine_ 是一個定義在 _System_ 命名空間中的 _Console_ 類的一個方法。該語句會在屏幕上顯示消息 "Hello, World!"。
* 最后一行 **Console.ReadKey();** 是針對 VS.NET 用戶的。這使得程序會等待一個按鍵的動作,防止程序從 Visual Studio .NET 啟動時屏幕會快速運行并關閉。
以下幾點值得注意:
* C# 是大小寫敏感的。
* 所有的語句和表達式必須以分號(;)結尾。
* 程序的執行從 Main 方法開始。
* 與 Java 不同的是,文件名可以不同于類的名稱。
## 編譯 & 執行 C# 程序
如果您使用 Visual Studio.Net 編譯和執行 C# 程序,請按下面的步驟進行:
* 啟動 Visual Studio。
* 在菜單欄上,選擇 File -> New -> Project。
* 從模板中選擇 Visual C#,然后選擇 Windows。
* 選擇 Console Application。
* 為您的項目制定一個名稱,然后點擊 OK 按鈕。
* 新項目會出現在解決方案資源管理器(Solution Explorer)中。
* 在代碼編輯器(Code Editor)中編寫代碼。
* 點擊 Run 按鈕或者按下 F5 鍵來運行程序。會出現一個命令提示符窗口(Command Prompt window),顯示 Hello World。
您也可以使用命令行代替 Visual Studio IDE 來編譯 C# 程序:
* 打開一個文本編輯器,添加上面提到的代碼。
* 保存文件為 **helloworld.cs**。
* 打開命令提示符工具,定位到文件所保存的目錄。
* 鍵入 **csc helloworld.cs** 并按下 enter 鍵來編譯代碼。
* 如果代碼沒有錯誤,命令提示符會進入下一行,并生成 **helloworld.exe** 可執行文件。
* 接下來,鍵入 **helloworld** 來執行程序。
* 您將看到 "Hello World" 打印在屏幕上。
- C# 基礎
- C# 簡介
- C# 環境
- C# 程序結構
- C# 基本語法
- C# 數據類型
- C# 類型轉換
- C# 變量
- C# 常量
- C# 運算符
- C# 判斷
- C# 循環
- C# 封裝
- C# 方法
- C# 可空類型(Nullable)
- C# 數組(Array)
- C# 字符串(String)
- C# 結構(Struct)
- C# 枚舉(Enum)
- C# 類(Class)
- C# 繼承
- C# 多態性
- C# 運算符重載
- C# 接口(Interface)
- C# 命名空間(Namespace)
- C# 預處理器指令
- C# 正則表達式
- C# 異常處理
- C# 文件的輸入與輸出
- C# 高級
- C# 特性(Attribute)
- C# 反射(Reflection)
- C# 屬性(Property)
- C# 索引器(Indexer)
- C# 委托(Delegate)
- C# 事件(Event)
- C# 集合(Collection)
- C# 泛型(Generic)
- C# 匿名方法
- C# 不安全代碼
- C# 多線程
- ASP.NET 簡介
- Web Pages 教程
- ASP.NET Web Pages - 教程
- ASP.NET Web Pages - 添加 Razor 代碼
- ASP.NET Web Pages - 頁面布局
- ASP.NET Web Pages - 文件夾
- ASP.NET Web Pages - 全局頁面
- ASP.NET Web Pages - HTML 表單
- ASP.NET Web Pages - 對象
- ASP.NET Web Pages - 文件
- ASP.NET Web Pages - 幫助器
- ASP.NET Web Pages - WebGrid 幫助器
- ASP.NET Web Pages - Chart 幫助器
- ASP.NET Web Pages - WebMail 幫助器
- ASP.NET Web Pages - PHP
- ASP.NET Web Pages - 發布網站
- Razor 教程
- ASP.NET Razor - 標記
- ASP.NET Razor - C# 和 VB 代碼語法
- ASP.NET Razor - C# 變量
- ASP.NET Razor - C# 循環和數組
- ASP.NET Razor - C# 邏輯條件
- ASP.NET Razor - VB 變量
- ASP.NET Razor - VB 循環和數組
- ASP.NET Razor - VB 邏輯條件
- MVC 教程
- ASP.NET MVC 教程
- ASP.NET MVC - Internet 應用程序
- ASP.NET MVC - 應用程序文件夾
- ASP.NET MVC - 樣式和布局
- ASP.NET MVC - 控制器
- ASP.NET MVC - 視圖
- ASP.NET MVC - SQL 數據庫
- ASP.NET MVC - 模型
- ASP.NET MVC - 安全
- ASP.NET MVC - HTML 幫助器
- ASP.NET MVC - 發布網站
- Web Forms 教程
- ASP.NET Web Forms - 教程
- ASP.NET Web Forms - HTML 頁面
- ASP.NET Web Forms - 服務器控件
- ASP.NET Web Forms - 事件
- ASP.NET Web Forms - HTML 表單
- ASP.NET Web Forms - 維持 ViewState
- ASP.NET Web Forms - TextBox 控件
- ASP.NET Web Forms - Button 控件
- ASP.NET Web Forms - 數據綁定
- ASP.NET Web Forms - ArrayList 對象
- ASP.NET Web Forms - Hashtable 對象
- ASP.NET Web Forms - SortedList 對象
- ASP.NET Web Forms - XML 文件
- ASP.NET Web Forms - Repeater 控件
- ASP.NET Web Forms - DataList 控件
- ASP.NET Web Forms - 數據庫連接
- ASP.NET Web Forms - 母版頁
- ASP.NET Web Forms - 導航
- Web Pages 參考手冊
- ASP.NET Web Pages - 類
- ASP.NET Web Pages - WebSecurity 對象
- ASP.NET Web Pages - Database 對象
- ASP.NET Web Pages - WebMail 對象
- ASP.NET Web Pages - 更多幫助器
- MVC - 參考手冊
- Web Forms 參考手冊
- ASP.NET Web Forms - HTML 服務器控件
- ASP.NET Web Forms - Web 服務器控件
- ASP.NET Web Forms - Validation 服務器控件
- 免責聲明