子类是接口实现类,父类没有对接口进行实现,为什么父类对象能够转型成接口
3条回答 默认 最新
- 冰棍hfv 2022-01-27 02:25关注
java中任意对象强转为接口类型都不会有编译错误,java中的类可以多实现接口,Java编译器无法判断该类是否实现了该接口所以不会有编译错误。也就是说,这里编译是没什么问题的,运行的时候就有问题了。
我模拟了一下你的环境,发现判断条件是一直都是false的,你运行也不会出错,因为进不去里面。我将父类强转放在外面,运行就出错了。测试结果:父类转不了接口。而子类实现了方法,可以转
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报