请问一下向下类型转换的问题
public class ERTU {
public void print() {
System.out.println("父类方法");
}
public static void main(String[] args) {
ERTU FTY = new NJI();
FTY.print();
NJI tuy = (NJI) FTY();
tuy.print();
tuy.childMethod();
}
}
class NJI extends ERTU{
public void childMethod() {
System.out.println("只在子类中定义方法");
}
}
为什么NJI tuy = (NJI) FTY();向下转换会报错只有这一个地方,换成NJI tuy = (NJI) NJI();这样就没问题,为什么?