我有以下抽象类:

public abstract class AbstractGroup {

private String name;
.
.
.
}


我有两个空类扩展了这个抽象类:

public class GroupA extends AbstractGroup {
}

public class GroupB extends AbstractGroup {
}


有没有一种方法可以在不获取ClassCastException的情况下强制转换以下内容:
group的类型为GroupA

group = (GroupB)group;


我需要该对象实例成为GroupB

最佳答案

这是不可能的。您不能水平投射类,而只能垂直投射类。 GroupA不是GroupB的子类型,因此总是会引发异常。

09-12 05:51