首页 热点资讯 义务教育 高等教育 出国留学 考研考公

java中可以将父类对象强制转换为子类对象吗?直接将父类对象强制转换为子类对象,与将上转型对象强制

发布网友 发布时间:2022-04-23 13:32

我来回答

2个回答

热心网友 时间:2023-10-15 20:27

可以,但必须满足一个条件,向下转型时必须知道当前对象是子类的对象。

热心网友 时间:2023-10-15 20:28

class A{
int age;

String name;

}
class B extends A{
String telephone;

}
这里B具有三个字段,age,name,telephone。
如果
A a = new B();
那么将会丢弃B的telephone字段,但是还是可以得到一个完整的A对象。

但是如果
B b = new A();

此时,A并没有telephone字段,并不能得到一个完整的B对象。
不知道通过这个列子你能否懂得。

或者从语义上来说,
汽车,火车,飞机,都是交通工具,汽车火车,飞机都是交通工具的子类。

你可以说汽车火车,飞机都是交通工具,但是不能说交通工具是汽车,或者交通工具就是火车,飞机。

热心网友 时间:2023-10-15 20:27

可以,但必须满足一个条件,向下转型时必须知道当前对象是子类的对象。

热心网友 时间:2023-10-15 20:28

class A{
int age;

String name;

}
class B extends A{
String telephone;

}
这里B具有三个字段,age,name,telephone。
如果
A a = new B();
那么将会丢弃B的telephone字段,但是还是可以得到一个完整的A对象。

但是如果
B b = new A();

此时,A并没有telephone字段,并不能得到一个完整的B对象。
不知道通过这个列子你能否懂得。

或者从语义上来说,
汽车,火车,飞机,都是交通工具,汽车火车,飞机都是交通工具的子类。

你可以说汽车火车,飞机都是交通工具,但是不能说交通工具是汽车,或者交通工具就是火车,飞机。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com