接口引用指向实现类的对象

为什么要用接口引用指向实现类的对象?
这种写法其实Java多态的表现形式(一个接口类型的引用变量来引用实现接口的类的实例,当这个引用调用方法时,它会根据实际引用的类的实例来判断具体调用哪个方法)

多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)

为什么一般都使用 接口引用指向子类对象 ,而不用 实现类本身 引用呢?

问题就在于接口可以有多个实现类,如果现在你使用这个实现类接收,也许哪一天你需要换成其它的实现类呢?

这时你只要将new的实现类对象换成你想要的就行了, 其它地方的代码根本不需要改动。

注意事项

没有在接口定义的方法(实现类增加的方法)是不可以被访问到的

在接口的实现类中该实现方法的类型和参数必须与接口中所定义的精确匹配。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值