在 C# 中,类是面向对象编程的基本构建块,用于定义对象的属性和行为。类提供了封装、继承和多态等特性,用于组织和管理代码。
使用 class 关键字定义一个类。
class Person
{
// 字段
private string name;
private int age;
// 构造函数
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
// 属性
public string Name
{
get { return name; }
set { name = value; }
}
public int Age
{
get { return age; }
set { age = value; }
}
// 方法
public void SayHello()
{
Console.WriteLine($"Hello, my name is {name} and I'm {age} years old.");
}
}
使用 new 关键字创建类的实例,并访问实例的字段、属性和方法。
Person person = new Person("John", 25);
person.SayHello();
// 输出:Hello, my name is John and I'm 25 years old.
使用 : 符号表示一个类继承自另一个类,从而可以继承父类的字段、属性和方法。
class Student : Person
{
private string school;
public Student(string name, int age, string school) : base(name, age)
{
this.school = school;
}
public void Study()
{
Console.WriteLine($"{name} is studying at {school}.");
}
}
使用 abstract 关键字定义一个抽象类,抽象类不能被实例化,只能被用作其他类的基类。
abstract class Shape
{
public abstract double CalculateArea();
}
class Circle : Shape
{
private double radius;
public Circle(double radius)
{
this.radius = radius;
}
public override double CalculateArea()
{
return Math.PI * radius * radius;
}
}
使用 interface 关键字定义一个接口,接口定义了一组成员(方法、属性、事件等),类可以实现一个或多个接口。
interface IPlayable
{
void Play();
void Pause();
}
interface IRecordable
{
void Record();
void Stop();
}
class Player : IPlayable, IRecordable
{
public void Play()
{
Console.WriteLine("Playing...");
}
public void Pause()
{
Console.WriteLine("Pausing...");
}
public void Record()
{
Console.WriteLine("Recording...");
}
public void Stop()
{
Console.WriteLine("Stopping...");
}
}
使用 static 关键字定义一个静态类,静态类只能包含静态成员,不能被实例化。
static class MathUtils
{
public static int Add(int a, int b)
{
return a + b;
}
public static int Multiply(int a, int b)
{
return a * b;
}
}
以上是C#中关于类的详细说明和示例代码。类是面向对象编程的核心概念,通过定义类来创建对象,并封装数据和行为,提高代码的可维护性和重用性。通过合理设计和使用类,可以构建出复杂的程序和系统。