我正在尝试执行以下操作:
abstract class G {
    protected var = 0;
}
class G1 extends G {
    var = 1;
}
class G2 extends G {
    var = 2;
}
// This is where I'm having a problem
public G method() {
    switch(someVar) {
        case x:
            return new G1();
        case y:
            return new G2();
    }
 }
Java 抱怨该方法必须返回 G 类型。我应该如何返回 G1 或 G2(它们都扩展了 G)?很可能我正在接近这个完全错误的......
谢谢你。