(1)建立一个抽象父类Ishape,包括了两个抽象方法,一个是求周长的方法length(),一个是求面积的方法area(); (2)新建一个子类圆Circle继承Ishape (3)新建一个子类矩形R
时间: 2024-11-06 16:22:07 浏览: 43
在面向对象编程中,首先创建一个抽象父类`Ishape`(也称为接口或抽象类),目的是为了定义一组共性的行为。在这个例子中,`Ishape`包含两个抽象方法`length()`(计算周长)和`area()`(计算面积),这两个方法没有具体的实现,需要由其子类提供。
接下来,我们创建两个子类:
1. 圆形`Circle`继承自`Ishape`。这个子类会覆盖父类的抽象方法,提供计算圆形周长和面积的具体算法。例如:
```java
public class Circle extends Ishape {
private double radius;
// 构造函数
public Circle(double radius) {
this.radius = radius;
}
@Override
public double length() {
return 2 * Math.PI * radius;
}
@Override
public double area() {
return Math.PI * radius * radius;
}
}
```
2. 矩形`Rectangle`也是`Ishape`的一个子类,它同样需要覆盖这两个抽象方法,比如:
```java
public class Rectangle extends Ishape {
private double width;
private double height;
// 构造函数
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
@Override
public double length() {
return 2 * (width + height);
}
@Override
public double area() {
return width * height;
}
}
```
通过这种方式,虽然`Circle`和`Rectangle`是不同的形状,但它们都实现了`Ishape`接口的行为,可以根据需求统一调用`length()`和`area()`方法,体现了多态的概念。
阅读全文