帮我改正一下这个JAVA小程序

来源:百度知道 编辑:UC知道 时间:2024/05/17 01:21:17
1、先定义一个圆类Circle,它封装了:
一个成员变量:
radius //表示圆的半径
四个成员方法:
Circle(int r) //构造方法
setRadius(int r) //设置圆半径
getArea() //获得圆的面积
getPerimeter() //获得圆的周长

接着再定义一个类CircleTest,用来调用Circle类,具体如下:
在CircleTest类的main()方法中创建一个半径为0的对象c1,再调用它的setRadius()修改其半径值为50,然后输出c1的周长和面积。

我写的错的

class Circle
{
private String Radius;
public Circle(int r)
{
Radius=r;
}
public void setRadius(int r)
{
Radius=r;
}
public String getRadius()
{
return Radius;
}
public float getPerimeter()
{
return 2*3*Radius;
}
public float getArea()
{
return 3*Radius*Radius;
}
}
class CircleTest{
public static void main(String args[])
{
Circle c1=new Circle(0);
c1.setRadius(50);
System.out.println("圆形的周长 "+c1.getPerimeter());
System.out.println("圆形的面积

第一个错误private String Radius;
<br>public Circle(int r)
<br>{
<br>Radius=r;
<br>}
<br>你把一个int 的r试图赋给一个string 的Radius后面都是这种问题,所以显示不兼容的类型,你后面运算面积周厂的时候用的string 类型的在算肯定不可以了

public final static double PI; //圆周率

是JAVA中圆周率的常量

给你修改后的:

class Circle {
private int Radius;
private static final int PI=3;

public Circle(int r) {
Radius = r;
}

public void setRadius(int r) {
Radius = r;
}

public int getRadius() {
return Radius;
}

public float getPerimeter() {
return 2 * PI * Radius;
}

public float getArea() {
return PI * Radius * Radius;
}
}

class CircleTest {
public static void main(String args[]) {
Circle c1 = new Circle(0);
c1.setRadius(50);
System.out.println("圆形的周长 " + c1.getPerimeter());
System.out.println