(1) 定义抽象类Shape。 Shape类声明有抽象方法double area( )用于求几何图形的面积、构造方法Shape(int width, int height)。Shape类具有protected属性width和height,分别表示几何图形所占的宽和高,皆为int类型。 (2) 定义Rectangle类。 要求Rectangle类继承Shape抽象类;提供有参构造方法Rectangle(int width, int height);定义有fill(String color)方法。 其中,Shape类和Rectangle类满足下面测试类Test的使用要求: public class Test { public static void main(String[] args) { Rectangle rectangle = new Rectangle(20,10); System.out.printf(“长方形面积为%.2f\n”, rectangle.area( ) ); rectangle.fill(“红色”); } } 测试输入为: 20 10 测试输出结果为: 长方形面积为200.00 长方形为红色
时间: 2023-12-10 09:42:59 浏览: 46
java图形类与学生类
以下是实现Shape和Rectangle类的代码:
```
// Shape.java
public abstract class Shape {
protected int width;
protected int height;
public Shape(int width, int height) {
this.width = width;
this.height = height;
}
public abstract double area();
}
// Rectangle.java
public class Rectangle extends Shape {
public Rectangle(int width, int height) {
super(width, height);
}
public void fill(String color) {
System.out.println("长方形为" + color);
}
@Override
public double area() {
return width * height;
}
}
```
在测试类Test中,创建一个Rectangle对象,调用其area()方法计算面积,并调用fill()方法填充颜色:
```
// Test.java
public class Test {
public static void main(String[] args) {
Rectangle rectangle = new Rectangle(20, 10);
System.out.printf("长方形面积为%.2f\n", rectangle.area());
rectangle.fill("红色");
}
}
```
运行测试类Test的输出结果为:
```
长方形面积为200.00
长方形为红色
```
阅读全文