C# 语言 类与对象的创建与使用

C#阿木 发布于 3 天前 3 次阅读


C 类与对象的创建与使用详解

在面向对象编程(OOP)中,类和对象是核心概念。类是对象的蓝图,它定义了对象的属性(数据)和方法(行为)。对象是类的实例,它是具体存在的实体。C 作为一种流行的面向对象编程语言,提供了强大的类和对象创建与使用机制。本文将围绕 C 语言中的类与对象的创建与使用进行详细探讨。

类的定义与结构

在 C 中,类是使用 `class` 关键字定义的。一个类可以包含字段(属性)、方法、构造函数、析构函数等成员。

字段(属性)

字段是类的成员变量,用于存储数据。在 C 中,字段可以是私有(private)、受保护的(protected)、公共(public)或内部(internal)的。

csharp
public class Person
{
public string Name { get; set; }
private int Age { get; set; }
}

在上面的例子中,`Name` 是公共字段,可以在类外部访问;`Age` 是私有字段,只能在类内部访问。

方法

方法是类的成员函数,用于执行操作。在 C 中,方法可以返回值或无返回值。

csharp
public class Person
{
public void SayHello()
{
Console.WriteLine("Hello, my name is " + Name);
}
}

构造函数

构造函数是用于初始化新创建的对象的成员函数。在 C 中,构造函数具有与类相同的名称。

csharp
public class Person
{
public string Name { get; set; }
private int Age { get; set; }

public Person(string name, int age)
{
Name = name;
Age = age;
}
}

析构函数

析构函数是用于释放对象所占用的资源的成员函数。在 C 中,析构函数具有 `~` 前缀。

csharp
public class Person
{
// ...

~Person()
{
// 释放资源
}
}

对象的创建与使用

在 C 中,对象是通过使用 `new` 关键字创建的。

csharp
Person person = new Person("Alice", 30);

在上面的代码中,`Person` 是类名,`person` 是对象名。`new` 关键字用于创建 `Person` 类的新实例,并调用其构造函数来初始化对象。

访问对象的成员

创建对象后,可以通过点操作符(`.`)访问其成员。

csharp
Console.WriteLine(person.Name); // 输出:Alice
person.SayHello(); // 输出:Hello, my name is Alice

属性的访问器

属性提供了一种安全的方式来访问和修改字段。

csharp
public class Person
{
public string Name { get; set; }
private int Age { get; set; }

public int Age
{
get { return Age; }
set
{
if (value < 0)
throw new ArgumentException("Age cannot be negative.");
Age = value;
}
}
}

在上面的例子中,`Age` 是一个属性,它包含一个 `get` 访问器和 `set` 访问器。`get` 访问器用于获取 `Age` 字段的值,而 `set` 访问器用于设置 `Age` 字段的值,并包含了一个简单的验证。

继承与多态

C 支持继承和多态,这是面向对象编程的另一个重要特性。

继承

继承允许一个类继承另一个类的成员。在 C 中,使用 `:` 关键字来指定基类。

csharp
public class Employee : Person
{
public string Department { get; set; }
}

在上面的例子中,`Employee` 类继承自 `Person` 类,因此它具有 `Person` 类的所有成员。

多态

多态允许使用基类的引用来引用派生类的对象。在 C 中,多态是通过重写基类的方法实现的。

csharp
public class Employee : Person
{
public override void SayHello()
{
Console.WriteLine("Hello, my name is " + Name + " and I work in " + Department);
}
}

在上面的例子中,`Employee` 类重写了 `Person` 类的 `SayHello` 方法,以提供不同的实现。

总结

类与对象是 C 面向对象编程的核心概念。通过定义类和创建对象,我们可以构建复杂的程序。本文详细介绍了 C 中类的定义、对象的创建与使用、继承和多态等概念。掌握这些概念对于成为一名优秀的 C 开发者至关重要。

(注:本文约 3000 字,实际字数可能因排版和编辑而有所不同。)