帮我写一下这道题的解题思路按要求完成程序的编写。 1、定义圆类Circle,其中包括: (1)成员变量:private int radius (2)无参构造方法 ,给radius赋值为2,并输出信息:"This is a constructor with no para."; (2)有参构造方法 ,接收用户给的radius赋值,并输出"This is a constructor with para."(如果给的半径小于等于0,则赋默认值为2); (3)为radius添加set方法,接收用户输入的半径,如果用户输入半径为<=0,则让半径的值为2; (4)为radius半径添加get方法,返回用户输入的半径; (5)求圆面积方法getArea(), π使用Math.PI代替; (6)定义toString方法,public String toString( )方法体为: return "Circle [radius=" + radius + "]"; 2、定义Main类,在main方法中,完成下列操作: (1)定义并创建Circle类对象c1,输出c1对象,求c1的面积并输出; (2)定义并创建Circle类对象c2,输出c2对象,求c2的面积并输出; (3)从键盘接收整数半径,赋值给c2的半径,输出c2对象,求c2的面积并输出; (4)从键盘接收整数半径,用有参构造方法创建Circle类对象c3,输出c3对象,求c3的面积后输出。
时间: 2023-06-05 22:04:58 浏览: 176
Circle类的解题思路:
1. 定义Circle类,包括:
(1)成员变量:private int radius
(2)无参构造方法:给radius赋值为2,并输出信息:"This is a constructor with no para."
(3)有参构造方法:接收用户给的radius赋值,并输出"This is a constructor with para."(如果给的半径小于等于0,则赋默认值为2)
(4)为radius添加set方法:接收用户输入的半径,如果用户输入半径为<=0,则让半径的值为2
(5)为radius半径添加get方法:返回用户输入的半径
(6)求圆面积方法getArea():π使用Math.PI代替
(7)定义toString方法:public String toString()方法体为:return "Circle [radius=" + radius + "]";
2. Main类的解题思路:
(1)定义并创建Circle类对象c1,输出c1对象,求c1的面积并输出;
(2)定义并创建Circle类对象c2,输出c2对象,求c2的面积并输出;
(3)从键盘接收整数半径,赋值给c2的半径,输出c2对象,求c2的面积并输出;
(4)从键盘接收整数半径,用有参构造方法创建Circle类对象c3,输出c3对象,求c3的面积后输出。
程序代码如下:
Circle类:
public class Circle {
private int radius;
// 无参构造方法
public Circle() {
radius = 2;
System.out.println("This is a constructor with no para.");
}
// 有参构造方法
public Circle(int r) {
if (r <= 0) {
radius = 2;
} else {
radius = r;
}
System.out.println("This is a constructor with para.");
}
// 设置半径
public void setRadius(int r) {
if (r <= 0) {
radius = 2;
} else {
radius = r;
}
}
// 获取半径
public int getRadius() {
return radius;
}
// 求面积
public double getArea() {
return Math.PI * radius * radius;
}
// tostring方法
public String toString() {
return "Circle [radius=" + radius + "]";
}
}
Main类:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 定义并创建Circle类对象c1
Circle c1 = new Circle();
// 输出c1对象,求c1的面积并输出
System.out.println(c1.toString());
System.out.println("The area of c1 is " + c1.getArea());
// 定义并创建Circle类对象c2
Circle c2 = new Circle();
// 输出c2对象,求c2的面积并输出
System.out.println(c2.toString());
System.out.println("The area of c2 is " + c2.getArea());
// 从键盘接收整数半径,赋值给c2的半径
Scanner input = new Scanner(System.in);
int r = input.nextInt();
c2.setRadius(r);
// 输出c2对象,求c2的面积并输出
System.out.println(c2.toString());
System.out.println("The area of c2 is " + c2.getArea());
// 从键盘接收整数半径,用有参构造方法创建Circle类对象c3
System.out.println("Please input a radius:");
int r3 = input.nextInt();
Circle c3 = new Circle(r3);
// 输出c3对象,求c3的面积并输出
System.out.println(c3.toString());
System.out.println("The area of c3 is " + c3.getArea());
}
}
阅读全文