为什么子类可以转换成父类,而父类不可以转换成子类呢?

解决方案 »

  1.   

    1.子类可以直接转化成父类
    因为子类具有父类属性也就是说在任何的情况下
    B b =new B();
    A a=(A)b,是没有问题的。2.父类不可以直接转化成子类,特别是子类有特有方法的时候。所以父类直接转代成子类可能会报错,并不是一定会成功的。再回来看这题。
    在这里的话,因为没有特别去写,所以是可以的。但是不够严谨。
    一般要跟上instanceof运算符来判断下。
    if(A instanceof B){
    B b=(B)a