假正经的小柴 2022-09-09 00:25 采纳率: 62.5%
浏览 35
已结题

Java接口实力对象可以用实现它的类来实例化的原因

看书书上说Java接口不能实例化,但代码里Java接口通过啦实现它的类进行了实例化,是什么来的啊,搞不懂,那继承里面是不是父类也可以通过子类进行实例化了,还有抽象类的实例化是不是也可以这样,原因是啥啊?
比如:
接口a,类b实现了a这个接口。
可以a obj = new b();也可以b obj = new b();第一种的原因是啥呢?

  • 写回答

2条回答 默认 最新

  • 熬夜磕代码丶 Java领域优质创作者 2022-09-09 09:00
    关注

    抽象类和接口都不能实例化对象,只有继承或实现抽象类和接口的类才能实例化,父类接受子类的对象是不能访问子类的对象的,但可以访问子类重写的方法了,这也是多态的体现,如果非要访问子类对象,那就向下转型,向下转型之前使用Instance判断一下,不然会报类型转换异常

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • nssnail 2022-09-09 00:59
    关注

    因为你实例化的还是对象,不是接口,哪怕a是接口,但是你new的是b。如果new a就不行

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月17日
  • 已采纳回答 9月9日
  • 创建了问题 9月9日

悬赏问题

  • ¥15 Qt 不小心删除了自带的类,该怎么办
  • ¥15 我需要在PC端 开两个抖店工作台客户端.(语言-java)
  • ¥15 有没有哪位厉害的人可以用C#可视化呀
  • ¥15 可以帮我看看代码哪里错了吗
  • ¥15 设计一个成绩管理系统
  • ¥15 PCL注册的选点等函数如何取消注册
  • ¥15 问一下各位,为什么我用蓝牙直接发送模拟输入的数据,接收端显示乱码呢,米思齐软件上usb串口显示正常的字符串呢?
  • ¥15 Python爬虫程序
  • ¥15 crypto 这种的应该怎么找flag?
  • ¥15 代码已写好,求帮我指出错误,有偿!