Shape arrayOfShapes[];
  arrayOfShapes=new Shape[3];
  
其中Shape是个接口,不是说接口不能实例化的吗!所以请大虾来解惑!

解决方案 »

  1.   

    接口是不能实例的,说白了就是不能直接new interface,而要new class。这个class是一个实现了接口的class
      

  2.   

    arrayOfShapes=new Shape[3];
    并没有实例化接口,只是声明了3个null句柄而已
      

  3.   

    new Shape[3]; 就认为实例化了?java不是这样的。
      

  4.   

    for (int i=0;i<3;i++){
    arrayOfShapes[i] = new Shape(); //这才是实例化,当然,对接口这样做是行不通的。
    }
      

  5.   

    Shape arrayOfShapes[];
      arrayOfShapes=new Shape();那这样算不算错误?
      

  6.   

    Shape arrayOfShapes[];
      arrayOfShapes=new Shape();这样做是错误的,先不说new一个接口的事,首先,不能把一个对象赋值给一个数组。