C#中virtual、partial和abstract关键字的详细解释:
1、virtual关键字
用途:允许在派生类中重写方法、属性、索引器或事件
public class Animal {
public virtual void MakeSound() {
Console.WriteLine("Some sound");
}
}
public class Dog : Animal {
public override void MakeSound() {
Console.WriteLine("Woof!");
}
}
2、partial关键字
用途:允许将类、结构、接口或方法分成多个部分定义
// File1.cs
public partial class Person {
public string FirstName { get; set; }
}
// File2.cs
public partial class Person {
public string LastName { get; set; }
public string GetFullName() {
return $"{FirstName} {LastName}";
}
}
3、abstract关键字
用途:创建必须由派生类实现的抽象类和抽象成员
public abstract class Shape {
public abstract double CalculateArea();
public void Display() {
Console.WriteLine($"Area: {CalculateArea()}");
}
}
public class Circle : Shape {
public double Radius { get; set; }
public override double CalculateArea() {
return Math.PI * Radius * Radius;
}
}
4、主要特点对比
virtual:
提供默认实现
派生类可选择是否重写
使用override关键字重写
partial:
拆分大型类到多个文件
便于团队协作开发
常用于自动生成代码场景
abstract:
强制派生类实现
不能实例化抽象类
定义接口契约
这些关键字在面向对象编程和大型项目开发中发挥着重要作用。
555

被折叠的 条评论
为什么被折叠?



