一下这个Java程序错在哪里

来源:百度知道 编辑:UC知道 时间:2024/05/16 00:44:10
class CCircle
{
private static double pi=3.14;
private double radius;
public CCircle(double r)
{
radius=r;
}
public void yu(CCircle c[])
{
System.out.print("area="+c[].radius);
}
}
public class app1_1
{
public static void main(String args[])
{
int i;
CCircle cir=new CCircle[3];
for(i=0;i<cir.length;i++)
{
cir[i]=new CCircle(i);
}
cir[2].print(cir[2]);
}
}

class CCircle
{
private static double pi=3.14;
private static double radius;
public CCircle(double r)
{
radius=r;
}
public void yu(CCircle c)
{
System.out.print("area="+c.radius);
}
}
public class app1_1
{
public static void main(String args[])
{
int i;
CCircle cir[]=new CCircle[3];
for(i=0;i<cir.length;i++)
{
cir[i]=new CCircle(i);
}
cir[2].yu(cir[2]);
}
}
public void yu(CCircle c),你传个对象就行了,传个对象数组进去,那么你自己将被迷惑到底是取那个对象的r,你都弄不清了,电脑就郁闷了——报错!!
cir[2].yu(cir[2]);这里是这样调用的,cir[2]是一个CCircle对象,所以它能访问yu()这个方法。你调用也用错了!
上面是该好的 运行结果为area=2.0;

class CCircle
{
private static double pi=3.14;
private double radius;
public CCircle(double r)
{
radius=r;
}
public void yu(CCircle c)
{
System.out.print("area="+c.radius);
}
}
public