在学习 C# 编程语言的基本构建块之前,先来看一下最简单的 C# 程序结构,以便将其作为即后续章节的学习参考。
创建Hello World程序
这个简单的 C# 程序由以下部分组成:
- 命名空间声明
- 一个类
- 类方法
- 类属性
- 主(Main)方法
- 声明和表达
- 注释
下面让我们来看一个打印“Hello World”的简单代码:
using System;
namespace HelloWorldApplication{
class HelloWorld{
static void Main(string[] args){
/* my first program in C# */
Console.WriteLine("Hello World");
Console.ReadKey();
}
}
}
Scala
当编译和执行这段代码时,它产生以下结果:
Hello World
Scala
下面来看看给定的示例程序的各个部分:
- 程序的第一行
using System;
-using
关键字用于在程序中包含System
命名空间。程序中通常有多个using
语句。 - 第二行是命名空间(
namespace
)声明。namespace
是类的集合。HelloWorldApplication
命名空间包含HelloWorld
类。 - 第三行是一个类声明,
HelloWorld
类包含程序使用的数据和方法定义。类通常包含多种方法。方法定义类的行为。 但是这定义的HelloWorld
类只有一个Main
方法。 - 第四行定义了
Main
方法,它是所有 C# 程序的入口点。Main
方法执行该类的操作。 - 第五行是只是一个程序代码注释,编译器忽略代码中的
/*...*/
之间的内容。 - 第六行是
Main
方法的具体功能实现,这里只是使用语句Console.WriteLine(“Hello World”)
指定其行为; WriteLine
是在System
命名空间中定义的Console
类的一个方法。此方法将消息“Hello, World!”显示在屏幕上。- 最后一行
Console.ReadKey();
是用于使程序等待按键,并且当从Visual Studio .NET启动程序时,它可以防止屏幕快速运行和关闭。
需要注意的是:
- C# 区分大小写。
- 所有语句和表达式必须以分号(
;
)结尾。 - 程序执行从
Main
方法开始。 - 与Java不同,程序文件名可以与类名不同。
编译和执行程序
如果使用Visual Studio.Net编译和执行 C# 程序,请执行以下步骤:
- 启动Visual Studio。
- 在菜单栏上,选择文件 -> 新建 -> 项目。
- 从模板中选择Visual C# ,然后选择Windows。
- 选择控制台应用(Console Application)。
- 指定项目的名称,然后单击确定(Ok)按钮。
- 这将在解决方案资源管理器(Solution Explorer)中创建一个新项目。
- 在代码编辑器中编写代码。
- 单击启动按钮或按F5键执行项目。将出现一个包含
"Hello World"
行的命令提示符窗口。
可以使用命令行(而不是Visual Studio IDE)来编译 C# 程序:
- 打开文本编辑器并添加上述代码。
- 将文件保存为helloworld.cs
- 打开命令提示符工具,并转到保存文件的目录。
- 键入
csc helloworld.cs
,然后按Enter键编译代码。 - 如果您的代码没有错误,命令提示符将转到下一行并生成
helloworld.exe
可执行文件。 - 键入
helloworld
来执行你的程序。 - 这时可在屏幕上看到输出的
"Hello World"
字符串了。
//原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/csharp/csharp_program_structure.html
C# 是面向对象的编程语言。在面向对象编程方法中,程序由通过动作相互交互的各种对象组成。 对象可能采取的操作称为方法。具有相同类型的对象认为是相同的类型,或者说是在同一个类。
例如,假设有一个Rectangle
对象。 它有长度(length
)和宽度(width
)的属性。 根据设计,它可能需要接受这些属性的值,计算面积和显示细节的方法。
下面我们来看看Rectangle
类是如何实现上述功能,并以此学习 C# 的基本语法:
using System;
namespace RectangleApplication
{
class Rectangle
{
// member variables
double length;
double width;
public void Acceptdetails()
{
length = 10.0;
width = 20.1;
}
public double GetArea()
{
return length * width;
}
public void Display()
{
Console.WriteLine("Length: {0}", length);
Console.WriteLine("Width: {0}", width);
Console.WriteLine("Area: {0}", GetArea());
}
}
class ExecuteRectangle
{
static void Main(string[] args)
{
Rectangle r = new Rectangle();
r.Acceptdetails();
r.Display();
Console.ReadLine();
}
}
}
C#
当编译和执行上述代码时,会产生以下结果:
Length: 10.0
Width: 20.1
Area: 201
Shell
using关键字
任何 C# 程序中的第一个语句一般是:
using System;
C#
using
关键字用于在程序中包含命名空间。程序可以包括多个using
语句。
class关键字
class
关键字用于声明一个类。
C# 中的注释
注释用于解释代码。编译器忽略注释中的任何内容。 C# 程序中的多行注释以/*
开始,并以*/
结尾,如下所示:
/* This program demonstrates
The basic syntax of C# programming
Language */
C#
单行注释由“//”
符号表示。 例如,
}//end class Rectangle
// 另一个行注释
C#
成员变量
变量是用于存储类的属性或数据成员的数据。在前面的程序中,Rectangle
类有两个名为length
和width
的成员变量。
成员函数
函数是执行特定任务的语句集合。类的成员函数在类中声明。我们的示例类Rectangle
包含三个成员函数:AcceptDetails
,GetArea和Display
。
实例化类
在上述程序中,ExecuteRectangle
类包含Main()
方法,并实例化了一个Rectangle
类的实例:r
。
标识符
标识符是用于标识类,变量,函数或任何其他用户定义项目的名称。 C# 中命名类的基本规则如下:
- 名称必须以字母开头,后面可以有一系列字母,数字(
0 - 9
)或下划线(_
)。 标识符中的第一个字符不能为数字。 - 它不能包含任何嵌入的空格或符号,如:
?
,-
,+
,!
,@
,#
,%
,^
,&
,*
,(
,)
,[
,]
,{
,}
,.
,;
,:
,"
,'
,/
和\
。但是,可以使用下划线(_
)。 - 它不能是 C# 关键字。
C# 关键字
关键字是预定义为 C# 编译器的保留字。 这些关键字不能用作标识符。 但是,如果要使用这些关键字作为标识符,但可以使用@
字符将关键字前缀来表示某一标识符。
在 C# 中,一些标识符在代码的上下文中具有特殊意义,例如get
和set
被称为上下文关键字。
下表列出了 C# 中的保留关键字和上下文关键字:
保留关键字
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 | - | - | - | - | - |
上下文关键字
add | alias | ascending | descending | dynamic | from | get |
---|---|---|---|---|---|---|
global | group | into | join | let | orderby | partial (type) |
partial(method) | remove | select | set | - | - | - |
//原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/csharp/csharp_basic_syntax.html#article-start