class Point
{
private double xCoordinate;
private double yCoordinate;
public Point(){}
public Point(double x,double y)
{
xCoordinate=x;
yCoordinate=y;
}
public String toString()
{
return "("+Double.toString(xCoordinate)+","
         +Double.toString(yCoordinate)+")";
}
} class Ball
{
private Point center;
private double radius;
private String colour;
public void Ball(){}
public void Ball(double xValue,double yValue,double r)
{
center=new Point(xValue,yValue);
radius=r;
}
public void Ball(double xValue,double yValue,double r,String c)
{
this(xValue,yValue,r);
colour=c;
}
public String toString()
{
return "A ball with center"+center.toString()+",radius"+
Double.toString(radius)+",colour"+colour;
}}class MovingBall extends Ball
{
private double speed;
public MovingBall(double xValue,double yValue,double r,String c,double s)
{
super(xValue,yValue,r,c);
speed=s;
}
public String toString()
{
return super.toString()+",speed"+Double.toString(speed);
}
}public class Tester
{
public static void main(String vrgs[])
{
MovingBall mb=new MovingBall(10,20,40,"Green",25);
System.out.println(mb);
}
}
C:\Documents and Settings\AABB>d:D:\>cd javaD:\java>javac Tester.java
Tester.java:31: 对 this 的调用必须是构造函数中的第一个语句
                this(xValue,yValue,r);
                    ^
Tester.java:47: 找不到符号
符号: 构造函数 Ball(double,double,double,java.lang.String)
位置: 类 Ball
                super(xValue,yValue,r,c);
                ^
2 错误D:\java>怎改呢!

解决方案 »

  1.   

    public   void   Ball(){}  构造函数有void吗?
    好象很多地方乱
    class   Ball 有继承 Point吗 ?
      

  2.   

    public   void   Ballpublic Ball太粗心了..
      

  3.   

    第一改 class Ball extends Point
    第二改 把构造的void全去掉
    运行结果
    A   ball   with   center ( 10.0, 20.0) ,radius 40.0,colour Green ,speed 25.0
    不知道对不对,没仔细看,自己再瞅瞅,我也是新手
      

  4.   

    void去掉.
      

  5.   

    楼上正解
    public   void   Ball(){} 
    public   void   Ball(double   xValue,double   yValue,double   r) 

    center=new   Point(xValue,yValue); 
    radius=r; 

    public   void   Ball(double   xValue,double   yValue,double   r,String   c) 

    this(xValue,yValue,r); 
    colour=c; 

    汗~!
      

  6.   

    把Ball类中的void去掉,构造方法是没有返回值类型的
      

  7.   

    class   Point { 

    private double   xCoordinate; 
    private double   yCoordinate; 

    public  Point(double x, double y) { 
    xCoordinate = x; 
    yCoordinate = y; 


    public  String  toString() { 
    return   "( "+Double.toString(xCoordinate)+ ", " 
                      +Double.toString(yCoordinate)+ ") "; 

    } class  Ball { 
      private   Point   center; 
      private   double   radius; 
      private   String   colour; 
      
      public Ball(double  xValue, double  yValue, double  r) { 
      center = new  Point(xValue,yValue); 
      radius = r; 
      } 
      
      public Ball(double   xValue,double   yValue,double   r,String   c) { 
      this(xValue,yValue,r); 
      colour = c; 
      } 
      
      public   String   toString() { 
      return   "A ball with center "+center.toString()+ ",radius="+ 
      Double.toString(radius)+ ",colour is "+colour; 
      } } class  MovingBall  extends  Ball { 
    private  double  speed; 

    public  MovingBall(double   xValue,double yValue, double r, String c, double s) { 
    super(xValue,yValue,r,c); 
    speed = s; 


    public String  toString() { 
    return  super.toString()+ ",speed is "+Double.toString(speed); 

    } public  class  Tester { 
    public static void main(String[] args) { 
    MovingBall  mb=new MovingBall(10,20,40, "Green ",25); 
    System.out.println(mb); 


    结果为A ball with center ( 10.0, 20.0) ,radius=40.0,colour is Green ,speed is 25.0
    主要是构造函数 void去掉