设计一个抽象类Shape,包括面积属性(受保护的),求面积的抽象方法。设计一个接口Run,里面包含方法goRun(). 设计一个类Circle继承Shape,实现Run接口,包含半径属性,构造方法(给半径赋值)、求面积的方法、goRun方法(方法输出“我可以滚动!”)java
时间: 2024-03-20 15:38:46 浏览: 52
设计一个Shape接口和它的两个实现类Square和Circle,要求如下
好的,以下是实现的代码:
```java
// 抽象类 Shape
abstract class Shape {
protected double area; // 面积属性
// 求面积的抽象方法
public abstract void calcArea();
}
// 接口 Run
interface Run {
void goRun();
}
// 圆形类 Circle
class Circle extends Shape implements Run {
private double radius; // 半径属性
// 构造方法,给半径赋值
public Circle(double radius) {
this.radius = radius;
}
// 求面积的方法
public void calcArea() {
area = Math.PI * radius * radius;
}
// 实现 Run 接口中的 goRun 方法
public void goRun() {
System.out.println("我可以滚动!");
}
}
// 测试类
public class Test {
public static void main(String[] args) {
Circle circle = new Circle(5); // 创建一个半径为5的圆形
circle.calcArea(); // 求面积
System.out.println("圆形的面积为:" + circle.area); // 输出面积
circle.goRun(); // 输出“我可以滚动!”
}
}
```
在上面的代码中,我们定义了一个抽象类Shape,其中包含了一个受保护的面积属性area和一个抽象的求面积方法calcArea()。然后,我们定义了一个接口Run,其中包含了一个goRun()方法。接着,我们定义了一个圆形类Circle,继承自Shape类并实现了Run接口,包含了一个半径属性radius、一个构造方法(给半径赋值)、一个求面积的方法calcArea()和一个实现了goRun()方法的方法。最后,我们创建了一个Circle对象,调用了其求面积方法和goRun()方法,输出其面积和“我可以滚动!”即可。
阅读全文