日期:2014-05-20  浏览次数:20673 次

java 动态绑定 中 遇到了问题,求帮助!!!
class Shape{
void draw(){
System.out.println("画法");
}
void erase(){
System.out.println("擦出");
}
}

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 DongTaiBangDing {

public static Shape randShape(){ //此处 提示 this method must return a type of Shape,该怎么改呢???(知道这是 要 返回 一个Shape 类型 变量的意思;)
switch((int)(Math.random()*3)){
case 0: return new Circle();
case 1: return new Square();
case 2: return new Triangle();
}
}
public static void main(String args[]){
Shape[] s=new Shape[9];
for(int i=0;i<s.length;i++){
s[i]=randShape();
}
for(int j=0;j<s.length;j++){
s[j].draw();
}
}



}

------解决方案--------------------
同意楼上,
------解决方案--------------------
探讨

去掉static ,还是提示 那个
如果去掉main 里面的static ,the selectiong does not support the mode