关于对象转换问提,多态也在这里
对象的转换,我有三个类
A,B,C
B extends A
c extends A
可以把B转换成A A a = (A)new B(); -----OK;
可以把C转换成A A a1 = (A)NEW c(); -----ok;
但是我用一个ArrayList 里面装两个类D对象d1,d2;
现我取出时返回值为Object为啥必需这样才能访问 D d = (D) new ArrayList().get();这样访问,这样是实现了从Object(父类)强转到子类,而上面的B,C确只能从子类转换到父类,不能从父类转换成子类,为什么会这样;
对象转换过程中的转换倒底是啥子意思,遵循什么样的规循;