(1)设置一个Cirlce 类,其中包含一个double类型的radius属性代表圆的半径。
包括一个findarea方法返回圆的面积。
(2)设置一个PassObject类,在类中定义一个printAreas方法,该方法的是指如下:
public void printAreas(Crilce c,int time){}//对象作为参数传递
在printAreas方法中打印出从1到time每个整数的半径值,以及以这个半径算出的面积。
例如:time为5,则输出1,2,3,4,5的半径以及他们对应的圆面积
然后在main方法中调用printAreas方法,调用完毕后再输出当前的半径值。
注意:可以使用匿名类对象
当我们只需要调用一次,我们就可以使用匿名的方式创建类的对象
特点:只能够调用一次。
1 package com.cnblogs.exer; 2 3 class Cirlce{ 4 double radius;//圆的半径属性 5 public double findArea(){//设置一个方法计算圆的面积 6 return Math.PI*radius*radius; 7 } 8 public double getRadius(){//获得半径 9 return radius; 10 } 11 public void setRadius(double r){//设置半径 12 radius=r; 13 } 14 } 15 16 public class PassObject { 17 public static void main(String[] args) { 18 PassObject po=new PassObject(); 19 Cirlce c=new Cirlce(); 20 po.printAreas(c, 5);//调用方法输出圆的半径和面积 21 System.out.println("now radius is:"+c.getRadius());
System.out.println();
po.printAreas(new Cirlce();6);//使用了匿名类对象
System.out.println("now radius is:"+c.getRadius());//输出结果是1-6的半径加各自的圆面积,但是now radius is=6,
//因为还是调用的c.getRadius,所以结果是6,由于是匿名类只能调用一次,所以我们没办法调用来获取当前的半径值7
22 } 23 //设置一个方法输出圆的半径和面积 24 public void printAreas(Cirlce c,int time){ 25 System.out.println("radius:"+" "+"Area:"); 26 int i=1; 27 while(i<=time){ 28 c.setRadius(i);//设置半径=i 29 System.out.println(c.getRadius()+" "+c.findArea()); 30 i++; 31 } 32 c.setRadius(i);//计算出当前的圆的半径值 33 } 34 }
运行结果:
加上一个匿名类的使用之后的运行结果:
("now radius is:"+c.getRadius());