java编写计算圆面积和周长
时间: 2024-09-18 13:17:26 浏览: 97
在Java中,你可以创建一个`Shape`类作为基类,然后定义两个派生类,比如`Circle`和`Rectangle`,它们分别表示圆形和矩形,并各自实现计算面积和周长的方法。下面是一个简单的示例:
```java
// 基类 Shape
abstract class Shape {
abstract double getArea(); // 计算面积
abstract double getPerimeter(); // 计算周长
}
// 圆形类 Circle,继承自 Shape
class Circle extends Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
@Override
double getArea() {
return Math.PI * Math.pow(radius, 2);
}
@Override
double getPerimeter() {
return 2 * Math.PI * radius;
}
}
// 矩形类 Rectangle,同样继承自 Shape
class Rectangle extends Shape {
private double length;
private double width;
public Rectangle(double length, double width) {
this.length = length;
this.width = width;
}
@Override
double getArea() {
return length * width;
}
@Override
double getPerimeter() {
return 2 * (length + width);
}
}
public class Main {
public static void main(String[] args) {
Circle circle = new Circle(5);
System.out.println("Circle area: " + circle.getArea());
System.out.println("Circle perimeter: " + circle.getPerimeter());
Rectangle rectangle = new Rectangle(4, 6);
System.out.println("Rectangle area: " + rectangle.getArea());
System.out.println("Rectangle perimeter: " + rectangle.getPerimeter());
}
}
```
在这个例子中,通过多态性,你可以直接创建`Shape`类型的变量,然后根据需要实例化成`Circle`或`Rectangle`,并调用各自的`getArea()`和`getPerimeter()`方法。
阅读全文