怎么样判断父类对象是不是子类对象
发布网友
发布时间:2024-04-15 00:32
我来回答
共1个回答
热心网友
时间:2024-05-10 23:54
给你举个例子
a b c 三个类
b 和c继承 a
b = new a()
c = new a();
你看能不能编译过去
a = new b()
a = new c();
a = new b();
((b)a)这样是可以的 因为a 的原类型是b
a = new b();
((c)a)是不可以的 因为a 的原类型是b
而你的例子 编译的时候应该是可以通过的
运行的时候就不对了
a = new a()
((b)a)转不出来的
这也就是拆箱 装箱的过程
装进去是什么类型拆出来就应该是什么