class Point{
private double x;
private double y;
Point(double x1,double y1){
x = x1;
y = y1;
}
void setX(double x1){
x = x1;
}
void setY(double y1){
y = y1;
}
double getX(){
return x;
}
double getY(){
return y;
}
}
class Cricle{
private Point o;
private double Reduis;
Cricle(Point p,double r){
o = p;
Reduis = r;
}
Cricle(double r){
Reduis = r;
o = new Point(0.0,0.0);
}
void setReduis(double r){
Reduis = r;
}
double getReduis(){
return Reduis;
}
public Point get0(){
return o;
}
void setO(double x1,double y1){
o.setX(x1);
o.setY(y1);
}
boolean contmius(Point p){
double x = p.getX() - o.getX();
double y = p.getY() - o.getY();
if(x*x+y*y > Reduis*Reduis){
return true;
}
else
return false;
}
double area(){
return 3.14 * Reduis * Reduis;
}

}
public class TestCricle{
public static void main(String[] args){
Cricle c1 = new Cricle(new Point(1.0,2.0),2.0);
Cricle c2 = new Cricle(5.0);

System.out.println("c1("+c1.getO().getX()+c1.getO().getY()+","+c1.getReduis()+")");
System.out.println("c2("+c2.getO().getX()+c2.getO().getY()+","+c2.getReduis()+")");

System.out.println("c1 area ="+c1.area());
System.out.println("c2 area ="+c2.area());
c1.setO(5.0,6.0);
c2.SetO(9.0,0.0);

Point p1 = new Point(2.0,3.0);
System.out.println(c1.contmius(p1));
System.out.println(c1.contmius(new Point(10.0,9.0)));
}
} 程序在System.out.println("c1("+c1.getO().getX()+c1.getO().getY()+","+c1.getReduis()+")")中报错 求各位大神们帮帮忙,先谢谢了 java

解决方案 »

  1.   


    楼上说的对。
    你get 和 set 都搞错了
      

  2.   

    嗯~ 我刚刚把这边都改了 
    class Point{
    private double x;
    private double y;
    Point(double x1,double y1){
    x = x1;
    y = y1;
    }
    void setX(double x1){
    x = x1;
    }
    void setY(double y1){
    y = y1;
    }
    double getX(){
    return x;
    }
    double getY(){
    return y;
    }
    }
    class Cricle{
    private Point o;
    private double Reduis;
    Cricle(Point p,double r){
    o = p;
    Reduis = r;
    }
    Cricle(double r){
    Reduis = r;
    o = new Point(0.0,0.0);
    }
    void setReduis(double r){
    Reduis = r;
    }
    double getReduis(){
    return Reduis;
    }
    public Point geto(){
    return o;
    }
    void seto(double x1,double y1){
    o.setX(x1);
    o.setY(y1);
    }
    boolean contmius(Point p){
    double x = p.getX() - o.getX();
    double y = p.getY() - o.getY();
    if(x*x+y*y > Reduis*Reduis){
    return true;
    }
    else
    return false;
    }
    double area(){
    return 3.14 * Reduis * Reduis;
    }

    }
    public class TestCricle{
    public static void main(String[] args){
    Cricle c1 = new Cricle(new Point(1.0,2.0),2.0);
    Cricle c2 = new Cricle(5.0);

    System.out.println("c1:("+c1.geto().getX()+c1.geto().getY()+","+c1.getReduis()+")");
    System.out.println("c2:("+c2.geto().getX()+c2.geto().getY()+","+c2.getReduis()+")");

    System.out.println("c1 area ="+c1.area());
    System.out.println("c2 area ="+c2.area());
    c1.seto(5.0,6.0);
    c2.Seto(9.0,0.0);

    Point p1 = new Point(2.0,3.0);
    System.out.println(c1.contmius(p1));
    System.out.println(c1.contmius(new Point(10.0,9.0)));
    }
    }但是dos又报错 说c2.seto(10.0,9.0)这里找不到符号,求各位大神么在帮帮忙~
      

  3.   


    c2.Seto(9.0,0.0);S大写了 你都不用编辑器的么