7-1 Ring类设计 (15 分)
编写一个圆环类Ring的Java程序。
a、定义圆环类的2个数据成员,分别是内半径innerRadius
,外半径outerRadius
,这些属性通过get和set方法进行封装。
b、 定义圆环类有参构造方法Ring(int innerRadius,int outerRadius)
,在有参构造方法中加入System.out.println("constructor")
;
c、完成无参构造方法Ring(),要求在无参构造方法中使用this调用有参构造方法给两个半径赋值(外半径赋值3,内半径赋值1)
d 、圆环类中定义 public int getArea()
方法可以返回其面积。面积求出后强制转换为整型值返回,π使用Math.PI表示。
在Main类中先生成一个圆环类对象,这个圆环的两个半径通过键盘读入,调用求面积方法求出面积后,输出面积。
然后再次定义一个圆环对象,调用无参构造方法,调用求面积方法求出面积后,输出面积。
输入格式:
输入在一行中先给出内半径,再给出外半径。
输出格式:
在一行中输出圆环的面积。
输入样例:
在这里给出一组输入。先是内半径,然后是外半径,例如:
1 2
输出样例:
在这里给出相应的输出。例如:
constructor
9
constructor
25
代码
import java.awt.*;
import java.util.*;
import javax.swing.JPanel;
import java.io.*;
class Ring {
public double innerRadius;
public double outerRadius;
public Ring() {
this(1, 3);
}
public Ring(double innerRadius, double outerRadius) {
super();
this.innerRadius = innerRadius;
this.outerRadius = outerRadius;
System.out.println("constructor");
}
public double getInnerRadius() {
return innerRadius;
}
public void setInnerRadius(double innerRadius) {
this.innerRadius = innerRadius;
}
public double getOuterRadius() {
return outerRadius;
}
public void setOuterRadius(double outerRadius) {
this.outerRadius = outerRadius;
}
public int getArea() {
return (int) (Math.PI * (this.outerRadius * this.outerRadius - this.innerRadius * this.innerRadius));
}
}
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Ring r1 = new Ring(scan.nextDouble(), scan.nextDouble());
System.out.println(r1.getArea());
Ring r2 = new Ring();
System.out.println(r2.getArea());
}
}