2.继承和抽象类(30.0分) (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(Stringcolor)方法。 其中,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.fil(“红色” ); 测试输入为: .20 10 测试输出结果为:长方形面积为200.00长方形为红色
时间: 2024-01-24 09:17:02 浏览: 56
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的代码如下:
```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("红色");
}
}
```
运行测试类输出的结果为:
```
长方形面积为200.00
长方形为红色
```
阅读全文