定义一个抽象类shape,包含抽象方法getarea
时间: 2024-10-25 18:18:42 浏览: 10
在面向对象编程中,一个抽象类是一种特殊的类,它不能直接实例化,主要用于提供一些基础功能和共性的行为规范。例如,在Java中,我们可以定义一个名为`Shape`的抽象类,它有一个或多个抽象方法,如`getArea()`,目的是为了定义形状的基本操作,但具体面积计算由每个子类负责实现。抽象类通常会包含如下结构:
```java
public abstract class Shape {
// 抽象方法getArea(),无具体实现
public abstract double getArea();
// 其他可能的抽象方法、属性或常量
// 工具方法或默认行为(如果有的话)
}
```
子类需要实现这个抽象方法,以便能够计算其自身的面积,例如:
```java
public class Circle extends Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
@Override
public double getArea() {
return Math.PI * radius * radius;
}
}
public class Rectangle extends Shape {
private double width, height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
@Override
public double getArea() {
return width * height;
}
}
```
在这个例子中,`Circle`和`Rectangle`都实现了`Shape`的`getArea()`方法,提供了各自的面积计算逻辑。
阅读全文