要求:
(1)定义一个Circle类,包含一个double型的radius属性代表圆的半径,一个findArea()方法返回圆的面积。
(2)定义一个类PassObject,在类中定义一个方法printAreas(),该方法的定义如下:
public void printAreas(Cirlce c, int time)
在printAreas方法中打印输出1到time之间的每个整数半径值,以及对应的面积。例如,times为5,则输出半径1,2,3,4,5,以及对应的圆面积。
在main方法中调用printAreas()方法,调用完毕后输出当前半径值。程序运行结果如图所示。
public class Test {
static PassObject passobject=new PassObject();
public static void main(String[] args){
passobject.gettime();
}
}
public class PassObject {
public void printarea(Circle c,int time) {
for(int i=1;i<=time;i++){
c.setR(i);//传半径到封装对象中
Circle c1=c.area(c);//新建一个对象c1接收返回的c
System.out.println(i+"\t"+c1.getArea());
}
}
public void gettime(){
Circle c=new Circle();
Scanner sc=new Scanner(System.in);
System.out.println("请输入time");
int time =sc.nextInt();
printarea(c, time);//得到需要的c和time
}
}
public class Circle{//封装对象
private double r;
private double area;
public double getR() {
return r;
}
public void setR(double r) {
this.r = r;
}
public double getArea() {
return area;
}
public void setArea(double area) {
this.area = area;
}
public Circle area(Circle c){
double m=c.getR()*c.getR()*3.14;//传入原对象无面积
c.area=m;//将得到的面积传给对象
return c;//返回对象
}
}