C# 程序可由一个或多个文件组成。每个文件都可以包含零个或零个以上的命名空间。一个命名空间除了可包含其他命名空间外,还可包含类、结构、接口、枚举、委托等类型。以下是 C# 程序的主干,它包含所有这些元素。
using System;
// 当前命名空间
namespace YourNamespace
{
// 类
class YourClass
{
}
// 结构
struct YourStruct
{
}
// 接口
interface IYourInterface
{
}
// 委托
delegate int YourDelegate();
// 枚举
enum YourEnum
{
}
// 子命名空间
namespace YourNestedNamespace
{
struct YourStruct
{
}
}
// 主类
class YourMainClass
{
// Main 方法
static void Main( string [] args)
{
// Your program starts here
![dot.gif](https://i-blog.csdnimg.cn/blog_migrate/2fb7a7a1351bea3c046ebb445cae4386.gif)
System.Console.WriteLine( " Hello World! " );
System.Console.ReadLine();
}
}
}
Main 方法
C# 程序必须包含一个 Main
方法,程序控制在该方法中开始和结束。在 Main
方法中创建对象和执行其他方法。
Main
方法是驻留在类或结构内的静态方法。在前面的“Hello World!”示例中,它驻留在名为 YourMainClass
的类中。用下列方式之一声明 Main
方法:
- 该方式返回 void:
static void Main()
{
//
} - 它还可以返回 int:
static int Main()
{
//
return 0 ;
} - 由于有这两个返回类型,它可以带有参数:
static void Main( string [] args)
{
//
}
或者
static int Main( string [] args)
{
//
return 0 ;
}Main
方法的参数是string
数组,该数组表示用于激活程序的命令行参数。请注意,不像 C++,该数组不包含可执行 (exe) 文件名。-
Main 方法是程序的入口点,程序控制在该方法中开始和结束。
-
该方法在类或结构的内部声明。它必须为静态方法,而不应为公共方法。(在上面的示例中,它接受默认访问级别 private。)
-
它可以具有 void 或 int 返回类型。
-
声明 Main 方法时既可以使用参数,也可以不使用参数。
-
参数可以作为从零开始索引的命令行参数来读取。
-
与 C 和 C++ 不同,程序的名称不会被当作第一个命令行参数。
-
-
有关使用命令行参数的更多信息,请参见 Main() 和命令行参数(C# 编程指南)和如何:创建和使用 C# DLL(C# 编程指南)中的示例。
输入和输出
C# 程序通常使用 .NET Framework 的运行时库提供的输入/输出服务。语句 System.Console.WriteLine("Hello World!");
使用了 方法,该方法是运行时库中的 Console
类的输出方法之一。它显示了标准输出流使用的字符串参数,输出流后面跟一个新行。其他 方法用于不同的输入Console.ReadLine()和输出Console.WriteLine("Hello World!")操作。如果程序开始处包含 using System;
指令,则无需完全限定 类和方法即可直接使用它们。例如,您可以改为调用 Console.WriteLine
,而不必指定 System.Console.Writeline
: