C#中抽象类与密封类的使用

avatar
作者
筋斗云
阅读量:0

抽象类和密封类都是用来限制类的继承和实例化的特殊类。

抽象类是一个不能被实例化的类,只能被继承。抽象类可以包含抽象方法和非抽象方法。子类必须实现抽象方法,但可以选择性地覆盖非抽象方法。抽象类通常用于定义一些通用的行为或属性,让子类来实现具体的功能。

public abstract class Shape {     public abstract double GetArea();     public abstract double GetPerimeter(); }  public class Circle : Shape {     public double Radius { get; set; }      public override double GetArea()     {         return Math.PI * Radius * Radius;     }      public override double GetPerimeter()     {         return 2 * Math.PI * Radius;     } } 

密封类是一个不能被继承的类,是最终的类。密封类通常用于防止其他类继承它,保持类的完整性和封闭性。

public sealed class FinalClass {     public void SomeMethod()     {         // do something     } }  // 无法继承FinalClass // public class SubClass : FinalClass {} 

总结来说,抽象类用于定义一些通用的行为,让子类来实现具体的功能;而密封类用于防止其他类继承它,保持类的完整性。在实际开发中,根据具体的需求来选择抽象类和密封类的使用。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!