跳到主要内容

C# 关键字

介绍

在 C# 编程语言中,关键字是预定义的保留字,具有特殊的含义和用途。这些关键字不能用作标识符(如变量名、类名等),因为它们已经被 C# 语言本身占用。理解这些关键字是学习 C# 的基础,因为它们构成了 C# 语法和逻辑的核心。

C# 中的关键字可以分为以下几类:

  • 访问修饰符:如 publicprivateprotected 等。
  • 类型定义:如 classstructenum 等。
  • 流程控制:如 ifelseswitchforwhile 等。
  • 异常处理:如 trycatchfinally 等。
  • 其他:如 newthisbase 等。

下面我们将逐步介绍这些关键字及其用法。


访问修饰符

访问修饰符用于控制类、方法、属性等的可见性和访问权限。以下是常见的访问修饰符:

  • public:成员可以从任何地方访问。
  • private:成员只能在定义它的类中访问。
  • protected:成员可以在定义它的类及其派生类中访问。
  • internal:成员可以在同一程序集中访问。
csharp
public class MyClass
{
public int PublicField; // 可以从任何地方访问
private int PrivateField; // 只能在 MyClass 中访问
protected int ProtectedField; // 可以在 MyClass 及其派生类中访问
internal int InternalField; // 可以在同一程序集中访问
}

类型定义关键字

C# 提供了多种类型定义关键字,用于创建自定义类型:

  • class:定义一个类。
  • struct:定义一个结构体。
  • enum:定义一个枚举。
csharp
// 定义一个类
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}

// 定义一个结构体
public struct Point
{
public int X { get; set; }
public int Y { get; set; }
}

// 定义一个枚举
public enum Days
{
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}

流程控制关键字

流程控制关键字用于控制程序的执行流程。以下是常见的流程控制关键字:

  • ifelse:条件语句。
  • switchcase:多分支选择语句。
  • forwhiledo:循环语句。
  • breakcontinue:控制循环的执行。
csharp
int number = 10;

// if-else 语句
if (number > 0)
{
Console.WriteLine("Number is positive.");
}
else
{
Console.WriteLine("Number is non-positive.");
}

// switch 语句
switch (number)
{
case 10:
Console.WriteLine("Number is 10.");
break;
default:
Console.WriteLine("Number is not 10.");
break;
}

// for 循环
for (int i = 0; i < 5; i++)
{
Console.WriteLine(i);
}

// while 循环
while (number > 0)
{
Console.WriteLine(number);
number--;
}

异常处理关键字

异常处理关键字用于处理程序运行时可能发生的错误:

  • try:包含可能引发异常的代码。
  • catch:捕获并处理异常。
  • finally:无论是否发生异常,都会执行的代码块。
csharp
try
{
int result = 10 / 0; // 除以零会引发异常
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Error: " + ex.Message);
}
finally
{
Console.WriteLine("This will always execute.");
}

其他关键字

以下是一些其他常见的关键字及其用途:

  • new:用于创建对象实例。
  • this:引用当前类的实例。
  • base:访问基类的成员。
csharp
public class Animal
{
public void Eat()
{
Console.WriteLine("Animal is eating.");
}
}

public class Dog : Animal
{
public void Bark()
{
Console.WriteLine("Dog is barking.");
base.Eat(); // 调用基类的方法
}
}

Dog myDog = new Dog(); // 使用 new 关键字创建对象
myDog.Bark();

实际案例

以下是一个实际案例,展示了如何使用 C# 关键字构建一个简单的程序:

csharp
using System;

public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}

public int Subtract(int a, int b)
{
return a - b;
}
}

class Program
{
static void Main(string[] args)
{
Calculator calc = new Calculator();
int sum = calc.Add(5, 3);
int difference = calc.Subtract(5, 3);

Console.WriteLine("Sum: " + sum);
Console.WriteLine("Difference: " + difference);
}
}

输出:

Sum: 8
Difference: 2

总结

C# 关键字是编写 C# 程序的基础。通过本文,我们学习了常见的 C# 关键字及其用途,包括访问修饰符、类型定义、流程控制、异常处理等。掌握这些关键字将帮助你更好地理解和编写 C# 代码。

提示

如果你想进一步巩固所学知识,可以尝试以下练习:

  1. 创建一个包含多个类的程序,并使用不同的访问修饰符控制成员的可见性。
  2. 编写一个程序,使用 switch 语句处理多个条件。
  3. 实现一个简单的异常处理机制,捕获并处理除零异常。

附加资源