class Shape
{
void draw(){}
void erase(){}
}class Circle extends Shape
{
  void draw()
 {
  System.out.println("Circle.draw()");
  }
  void erase()
{
 System.out.printltn("Circle.erase()");
 }
}class Square extends Shape
{
void draw()
{
System.out.println("Square.draw()");
}
void erase()
{
System.out.println("Square.erase()");
}}class Triangle extends Shape
{
void draw()
{
System.out.println("Triangle.draw()");
}
void erase()
{
System.out.println("Triangle.erase()");
}
}public class BindingTester
{
int n;
public static void main(String[] args)
{
Shape[]s=new Shape[9];
}
    for(int i=0;i<s.length;i++)
{
n=(int)(Math.random()*3); switch(n)
{
case 0 : s[i]=new Circle; break;
case 1 : s[i]=new Square(); break;
case 2 : s[i]=new Triangle();
}
}
for(int i=0;i<s.length;i++)s[i].draw();
}

解决方案 »

  1.   

    把你的BindingTester 重新发一遍
      

  2.   

    说有两处语发错不能运行!
    for(int   i=0;i <s.length;i++)s[i].draw(); for(int   i=0;i <s.length;i++) 
      

  3.   

    public class BindingTester
    {
    int n;
    public static void main(String[] args)
    {
    Shape[]s=new Shape[9];
    }
        for(int i=0;i<s.length;i++)
    {
    n=(int)(Math.random()*3); switch(n)
    {
    case 0 : s[i]=new Circle; break;
    case 1 : s[i]=new Square(); break;
    case 2 : s[i]=new Triangle();
    }
    }
    for(int i=0;i<s.length;i++)s[i].draw();
    }
      

  4.   

    我他妈  真BEN  !
      

  5.   

    刚学Java吧,代码很多地方错了,像println你拼成了printltn,生成实例时后面的()别忘了:new Circle应该是new Circle(),还有就是得注意一下你代码的规范性,注意缩进。下面是正确的代码class   Shape 

    void   draw(){} 
    void   erase(){} 
    } class Circle extends   Shape 

        void   draw() 
      { 
        System.out.println( "Circle.draw() "); 
        } 
        void   erase() 

      System.out.println( "Circle.erase() "); 
      } 
    } class   Square   extends   Shape 

    void   draw() 

    System.out.println( "Square.draw() "); 

    void   erase() 

    System.out.println( "Square.erase() "); 
    } } class   Triangle   extends   Shape 

    void   draw() 

    System.out.println( "Triangle.draw() "); 

    void   erase() 

    System.out.println( "Triangle.erase() "); 

    } public   class   BindingTester 

    static int n; 
    public   static   void   main(String[]   args) 

    Shape[]s=new   Shape[9];  
            for(int i=0;i <s.length;i++) 
             { 
             n=(int)(Math.random()*3); 
             switch(n) 

    case 0 : s[i]=new Circle();   break; 
    case 1 : s[i]=new Square();   break; 
    case 2 : s[i]=new Triangle(); 

             } 
            for(int   i=0;i <s.length;i++)s[i].draw(); 

    }