c++ abstract
时间: 2023-11-18 20:51:45 浏览: 80
抽象类(Abstract Class)是一种特殊的类,它不能被实例化,只能被继承。抽象类通常用于定义一组相关的方法,但是无法提供具体的实现。其目的是为了让子类去实现这些方法,并且强制子类按照规定的方式进行实现。
抽象类在C#中使用`abstract`关键字进行声明。抽象类不能被直接实例化,需要通过继承来使用。子类继承抽象类后,必须实现父类中的所有抽象方法,否则子类也必须声明为抽象类。
下面是一个简单的抽象类的示例:
```csharp
abstract class Shape
{
public abstract double GetArea(); // 抽象方法
public void PrintArea()
{
Console.WriteLine("Area: " + GetArea());
}
}
class Circle : Shape
{
private double radius;
public Circle(double radius)
{
this.radius = radius;
}
public override double GetArea()
{
return Math.PI * radius * radius;
}
}
class Program
{
static void Main(string[] args)
{
Circle circle = new Circle(5);
circle.PrintArea();
}
}
```
输出结果为:
```
Area: 78.5398163397448
```
阅读全文