编写一个完整的程序。包含声明一个接口Shape2D ,类Cricle、Rectangle、Test,具体要求如下: ⑴接口Shape2D: 接口方法和属性 double area():求一个形状的面积 double pi:3.14:定义常量 ⑵类Cricle: 实现Shape2D接口,并有以下属性和方法: ①属性 radius:double型,表示长方形的宽度 ②方法 Cricle (double r):构造函数 (3)类Rectangle: 实现Shape2D接口,并有以下属性和方法: ①属性 width:double型,表示长方形的宽度 height:double型,表示长方形的长度 ②方法 Rectangle(double w,double h):构造函数 (4)Test类作为主类要完成测试功能 ①生成Rectangle、Cricle对象 ②调用对象的area方法,输出对象的面积信息,如“Area of rect =”
时间: 2024-02-20 12:57:37 浏览: 50
以下是程序的实现:
```java
// Shape2D 接口
interface Shape2D {
double area(); // 求一个形状的面积
double pi = 3.14; // 定义常量
}
// Circle 类
class Circle implements Shape2D {
double radius; // 圆的半径
// 构造函数
Circle(double r) {
radius = r;
}
// 实现 Shape2D 接口中的 area 方法
public double area() {
return pi * radius * radius;
}
}
// Rectangle 类
class Rectangle implements Shape2D {
double width; // 长方形的宽度
double height; // 长方形的长度
// 构造函数
Rectangle(double w, double h) {
width = w;
height = h;
}
// 实现 Shape2D 接口中的 area 方法
public double area() {
return width * height;
}
}
// Test 类
public class Test {
public static void main(String[] args) {
// 生成 Circle 对象
Circle c = new Circle(5.0);
// 输出 Circle 对象的面积信息
System.out.println("Area of circle = " + c.area());
// 生成 Rectangle 对象
Rectangle r = new Rectangle(3.0, 4.0);
// 输出 Rectangle 对象的面积信息
System.out.println("Area of rect = " + r.area());
}
}
```
输出结果:
```
Area of circle = 78.5
Area of rect = 12.0
```
阅读全文