G'day 我有点新手,我一直在努力寻找为什么这个练习似乎无法编译。任何和所有的建议将不胜感激!
目前,错误是
"java:10:错误:无效的方法声明;返回类型需要公共设置半径(双 r({">
但是,当我将public setRadius
更改为public double setRadius
时,我得到 14 个错误。以下是其中的一些
CarApp.java:59:错误:找不到符号
System.out.println("Radius for Car 2 = " + radus2);
^
CarApp.java:63:错误:找不到符号
System.out.println("Radius for Car 3 = " + radius3);
^
CarApp.java:65:错误:找不到符号
car1.car(22.0);
^
CarApp.java:67:错误:变量 cir 已在方法 main(String[]( 中定义
double cir = circle1.calCircumference();
^
CarApp.java:68:错误:变量区域已在方法 main(String[]( 中定义
double area = car1.calArea();
^
CarApp.java:70:错误:找不到符号
class Car {
private static double r;
public static void Car(double rd) {
r = rd;
}
public Car(Car Source){
this.r = Source.r;
}
public setRadius (double r){
radius=r;
}
public double getRadius(){
return this.r;
}
public double calCircumference(){
return 2 * Math.PI * r;
}
public static double calArea() {
return Math.PI * r * r;
}
}
class CarApp {
public static void main(String[] args)
{
Car car1 = new Car();
Car car2 = new Car(car1);
Car car3 = new Car(car2);
double rd = Double.parseDouble(args[0]);
System.out.println( "Car radius = " + rd );
car1.car(rd);
double cir = circle1.calCircumference();
double area = circle1.calArea();
car2.car(rd);
double cir2 = circle2.calCircumference();
double area2 = circle2.calArea();
double radius2 = circle2.getRadius();
car3.car(rd);
double cir3 = circle3.calCircumference();
double area3 = circle3.calArea();
double radius3 = circle3.getRadius();
System.out.println("Before");
System.out.println("Circumference for Car 1 = " + cir);
System.out.println("Area for Car 1 = " + area);
System.out.println("");
System.out.println("Circumference for Car 2 = " + cir2);
System.out.println("Area for Car 2 = " + area2);
System.out.println("Radius for Car 2 = " + radius2);
System.out.println("");
System.out.println("Circumference for Car 3 = " + cir3);
System.out.println("Area for Car 3 = " + area3 );
System.out.println("Radius for Car 3 = " + radius3);
car1.car(22.0);
double radius1 = car1.getRadius();
double cir = car1.calCircumference();
double area = car1.calArea();
car2.car(rd);
double cir21 = car2.calCircumference();
double area21 = car2.calArea();
double radius21=car2.getRadius();
car3.setRadius(10.0);
double cir31 = car2.calCircumference();
double area31 = car2.calArea();
double radius31 = car2.getRadius();
System.out.println("After");
System.out.println("Radius for Car 1 = " + radius1);
System.out.println("");
System.out.println("Circumference for Car 2 = " + cir21);
System.out.println("Area for Car 2 = " + area21);
System.out.println("Radius for Car 2 = " + radius21);
System.out.println("");
System.out.println("Radius for Car 3 = " + radius31);
}
}
代码有很多错误,请尝试通过我认为您要做的事情来修复它们......
class Car {
private static double r;
public Car() {
r = 0.0;
}
public Car(double rd) {
r = rd;
}
public Car(Car Source){
this.r = Source.getRadius();
}
public void setRadius (double r){
this.r=r;
}
public double getRadius(){
return this.r;
}
public double calCircumference(){
return 2 * Math.PI * r;
}
public static double calArea() {
return Math.PI * r * r;
}
}
class CarApp {
public static void main(String[] args)
{
Car car1 = new Car();
Car car2 = new Car(car1);
Car car3 = new Car(car2);
double rd = Double.parseDouble(args[0]);
System.out.println( "Car radius = " + rd );
car1.setRadius(rd);
// need define circle1 like `Circle circle1 = new Circle(...)`
double cir = circle1.calCircumference();
double area = circle1.calArea();
car2.setRadius(rd);
// need to define circle2, like the above
double cir2 = circle2.calCircumference();
double area2 = circle2.calArea();
double radius2 = circle2.getRadius();
car3.setRadius(rd);
// need to define circle3, like the above above
double cir3 = circle3.calCircumference();
double area3 = circle3.calArea();
double radius3 = circle3.getRadius();
System.out.println("Before");
System.out.println("Circumference for Car 1 = " + cir);
System.out.println("Area for Car 1 = " + area);
System.out.println("");
System.out.println("Circumference for Car 2 = " + cir2);
System.out.println("Area for Car 2 = " + area2);
System.out.println("Radius for Car 2 = " + raduis2);
System.out.println("");
System.out.println("Circumference for Car 3 = " + cir3);
System.out.println("Area for Car 3 = " + area3 );
System.out.println("Radius for Car 3 = " + raduis3);
car1.setRadius(22.0);
double radius1 = car1.getRadius();
cir = car1.calCircumference();
area = car1.calArea();
car2.setRadius(rd);
double cir21 = car2.calCircumference();
double area21 = car2.calArea();
double radius21=car2.getRadius();
car3.setRadius(10.0);
double cir31 = car2.calCircumference();
double area31 = car2.calArea();
double radius31 = car2.getRadius();
System.out.println("After");
System.out.println("Radius for Car 1 = " + raduis1);
System.out.println("");
System.out.println("Circumference for Car 2 = " + cir21);
System.out.println("Area for Car 2 = " + area21);
System.out.println("Radius for Car 2 = " + raduis21);
System.out.println("");
System.out.println("Radius for Car 3 = " + raduis31);
}
}
希望对...