关于超类转换为子类问题

超类转换为子类,应该用instanceof检查。即
if(超类instanceof子类)
{进行转换}

可是 超类instanceof子类 是不是都返回false啊?这样子不是不能进行转换了吗?

慕少森
浏览 566回答 4
4回答

交互式爱情

这个比较不是类和类之间的比较,而是一个变量的声明类型和实际类型之间的比较。比如 A 是 B 的父类(或超类),某个变量 a 被声明为 A 类型,但它实际上可能是 B 类型。a instanceof B 就是为了弄清 a 到底是不是 B 类型。

小怪兽爱吃肉

instanceof 检查的是值的类型。即使那个值来自一个 Object变量,该true时还会得到true。

慕的地6264312

如果是为了申明类型,不建议用继承,用接口.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java