Java接口练习

按以下要求编写一个完整的Java 程序:

(1) 请创建一个 Calculate 接口,包括:

  1. 常量PI:

2 .两个方法:计算周长 getPerimeter()和面积 getArea()。

(2)设计 Circle 类,其有一个属性:radius(半径),并实现 Calculate 接口。

(3)编写测试类 Test,提示用户从键盘输入圆的半径来构建 Circle 类的对象,测试 Circle类的成员方法,并显示圆的面积和周长。

java 复制代码
// Calculate接口
interface Calculate {
    double PI = 3.14159;

    double getPerimeter(double radius);
    double getArea(double radius);
}

// Circle类,实现Calculate接口
class Circle implements Calculate {
    private double radius;

    public Circle(double radius) {
        this.radius = radius;
    }

    @Override
    public double getPerimeter(double radius) {
        return 2 * PI * radius;
    }

    @Override
    public double getArea(double radius) {
        return PI * Math.pow(radius, 2);
    }
}

// 测试类Test
public class Test {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入圆的半径: ");
        double radius = scanner.nextDouble();
        Circle circle = new Circle(radius);

        System.out.println("圆的周长为: " + circle.getPerimeter(radius));
        System.out.println("圆的面积为: " + circle.getArea(radius));
    }
}
相关推荐
dhxhsgrx25 分钟前
PYTHON训练营DAY25
java·开发语言·python
不知几秋1 小时前
数字取证-内存取证(volatility)
java·linux·前端
风逸hhh3 小时前
python打卡day25@浙大疏锦行
开发语言·python
刚入门的大一新生3 小时前
C++初阶-string类的模拟实现与改进
开发语言·c++
chxii4 小时前
5java集合框架
java·开发语言
老衲有点帅4 小时前
C#多线程Thread
开发语言·c#
C++ 老炮儿的技术栈5 小时前
什么是函数重载?为什么 C 不支持函数重载,而 C++能支持函数重载?
c语言·开发语言·c++·qt·算法
IsPrisoner5 小时前
Go语言安装proto并且使用gRPC服务(2025最新WINDOWS系统)
开发语言·后端·golang
Python私教5 小时前
征服Rust:从零到独立开发的实战进阶
服务器·开发语言·rust