C# 类(Class)学习笔记

什么是类?

类是一种用户定义的引用类型。它可以包含数据成员、方法成员、属性成员、事件成员和嵌套类型。

如何声明一个类?

在 C# 中,我们可以通过使用 class 关键字声明一个类,例如:

csharpCopy Code
public class MyClass { // 数据成员 private int myInt; // 方法成员 public void MyMethod() { // 方法实现 } // 属性成员 public int MyProperty { get; set; } // 事件成员 public event EventHandler MyEvent; // 嵌套类型 public class MyNestedClass { // 嵌套类型实现 } }

如何创建一个类的实例?

我们可以使用 new 运算符创建一个类的实例,并调用其中的方法、属性等成员,例如:

csharpCopy Code
MyClass myObject = new MyClass(); myObject.MyMethod(); myObject.MyProperty = 42; myObject.MyEvent += MyEventHandler;

类的继承

在 C# 中,我们可以使用继承来扩展一个类的功能。通过继承,子类可以重写父类的方法、属性等成员,也可以添加自己的成员,例如:

csharpCopy Code
public class MyDerivedClass : MyClass { // 重写父类的方法 public override void MyMethod() { base.MyMethod(); // 子类的方法实现 } // 添加自己的成员 public void MyNewMethod() { // 实现自己的方法 } }

实例:计算器类

下面是一个简单的计算器类的实现,它可以进行加、减、乘、除运算,并且可以记录运算历史:

csharpCopy Code
public class Calculator { private double lastResult; public double Add(double a, double b) { lastResult = a + b; return lastResult; } public double Subtract(double a, double b) { lastResult = a - b; return lastResult; } public double Multiply(double a, double b) { lastResult = a * b; return lastResult; } public double Divide(double a, double b) { if (b == 0) { throw new DivideByZeroException(); } lastResult = a / b; return lastResult; } public string GetHistory() { string history = ""; // 省略历史记录实现 return history; } }

我们可以创建一个 Calculator 的实例,并使用其中的方法:

csharpCopy Code
Calculator calculator = new Calculator(); double result = calculator.Add(1, 2); // result = 3 result = calculator.Multiply(result, 2); // result = 6 string history = calculator.GetHistory(); // 获取历史记录