父类与子类的转换

父类Fruit

子类Orange

子类Apple

(1)子类转换为父类,没问题:Fruit   orange = (Fruit)(new Orange());

(2)父类转换为子类,不是没有可能,除非父类是子类构造出来的实例,不然是不能强转的

例如:

Apple  apple = (Apple)orange;这样是不行的,橘子怎么可能变成苹果,所以会报“类转换异常”。

Orange o = (Orange)orange;这样是可以的,橘子可以重新由水果变回橘子。

猜你喜欢

转载自www.cnblogs.com/wu-1393180819/p/9470980.html