编写程序。定义一个圆形类Circle,其中包含1个私有字段成员(半径),3个公有方法成员(设置半径、计算面积和计算周长)和3个构造方法(不带参数的构造方法、带参数的构造方法和拷贝构造方法)。再定义一个主类测试圆形类Circle,要求: i定义一个圆形对象c1,然后从键盘输入一个数值x并将其设定为c1的半径,计算并显示c1的面积和周长。 ii再定义一个圆形对象c2并将半径初始化为2 ,计算并显示c2的面积和周长。 iii再定义一个圆形对象c3并用c1初始化c3,计并显示c3的面积和周长。
时间: 2023-05-24 20:04:28 浏览: 211
Circle类的定义:
```java
public class Circle {
private double radius;
// 构造方法
public Circle() {
radius = 0.0;
}
public Circle(double r) {
radius = r;
}
public Circle(Circle c) {
radius = c.radius;
}
// 普通方法
public void setRadius(double r) {
radius = r;
}
public double getArea() {
return Math.PI * radius * radius;
}
public double getCircumference() {
return 2 * Math.PI * radius;
}
}
```
测试类的代码:
```java
import java.util.Scanner;
public class TestCircle {
public static void main(String[] args) {
Circle c1 = new Circle();
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个半径值:");
double r = sc.nextDouble();
c1.setRadius(r);
System.out.println("半径为" + r + "的圆的面积为:" + c1.getArea());
System.out.println("半径为" + r + "的圆的周长为:" + c1.getCircumference());
Circle c2 = new Circle(2);
System.out.println("半径为2的圆的面积为:" + c2.getArea());
System.out.println("半径为2的圆的周长为:" + c2.getCircumference());
Circle c3 = new Circle(c1);
System.out.println("半径为" + r + "的圆用于初始化c3后,c3的面积为:" + c3.getArea());
System.out.println("半径为" + r + "的圆用于初始化c3后,c3的周长为:" + c3.getCircumference());
sc.close();
}
}
```
输出:
```
请输入一个半径值:3
半径为3.0的圆的面积为:28.274333882308138
半径为3.0的圆的周长为:18.84955592153876
半径为2的圆的面积为:12.566370614359172
半径为2的圆的周长为:12.566370614359172
半径为3.0的圆用于初始化c3后,c3的面积为:28.274333882308138
半径为3.0的圆用于初始化c3后,c3的周长为:18.84955592153876
```
阅读全文