C# 中的抽象类是什么?

csharpprogrammingserver side programming更新于 2025/9/20 12:22:17

抽象类包含抽象方法,这些方法由派生类实现。派生类具有更具体的功能。

以下示例展示了 C# 中抽象类的用法。

示例

using System;
namespace Demo {
   abstract class Shape {
      public abstract int area();
   }
   class Rectangle: Shape {
      private int length;
      private int width;
      public Rectangle( int a = 0, int b = 0) {
         length = a;
         width = b;
         Console.WriteLine("Length of Rectangle: "+length);
         Console.WriteLine("Width of Rectangle: "+width);
      }
      public override int area () {
         return (width * length);
      }
   }
   class RectangleTester {
      static void Main(string[] args) {
         Rectangle r = new Rectangle(14, 8);
         double a = r.area();
         Console.WriteLine("Area: {0}",a);
         Console.ReadKey();
      }
   }
}

输出

Length of Rectangle: 14
Width of Rectangle: 8
Area: 112

我们上面的抽象类是 −

abstract class Shape {
   public abstract int area();
}

以下是关于抽象类的规则。

  • 不能创建抽象类的实例
  • 不能在抽象类之外声明抽象方法
  • 当一个类被声明为密封时,它不能被继承,抽象类不能被声明为密封的。

相关文章