编写了以下的类:
class Car{
//汽车类
}
public class Bmw extends Car{
public static void main(String args[]) {
Car car = new Car(); // 创建car对象
Bmw bmw = new Bmw(); // 创建bmw对象
Bmw newcar=(Bmw) car;
}
} 运行后抛出ClassCastException异常,是什么原因呢?
具有继承关系的两个类之间不是可以互相进行强制类型转换的吗
class Car{
//汽车类
}
public class Bmw extends Car{
public static void main(String args[]) {
Car car = new Car(); // 创建car对象
Bmw bmw = new Bmw(); // 创建bmw对象
Bmw newcar=(Bmw) car;
}
} 运行后抛出ClassCastException异常,是什么原因呢?
具有继承关系的两个类之间不是可以互相进行强制类型转换的吗
比如,
Car aCar=new Bmw();
Bmw aBmw=(Bmw)aCar;
Bmw bm=(Bmw)car;
Bmw aBmw=(Bmw)aCar;
这么做就是让父亲和儿子成为同一个辈份,也就是让儿子看见父亲就叫哥一样。