为什么这里要用接口对象指向实现类

为什么这里要用接口对象指向实现类

//处理数据
UserService userService=new UserServiceImpl();

UserService是一个接口我知道,UserServiceImpl是UserService的实现类我也知道

为什么这里不直接UserServiceImpl userService=new UserServiceImpl();

呢?

实在搞不懂呢,请老师解答一下谢谢!!!!

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,这是面向接口编程的体现,也是现在开发中经常使用的,比单独使用类有很多好处。比如:你定义了一个类,某一天发现这个类需要扩展新功能,但是其他地方还使用它,这样修改维护就很麻烦了。但是,如果使用接口,那么只需要在接口中添加功能,比如写一个方法,然后再重新写一个接口的实现类就可以了。调用的时候,接口的引用就指向了新完成的实现类。

    接口化的编程为的就是将实现封装起来,然而调用者只关心接口不关心实现,也就是“高内聚,低耦合”的思想;这样做的目的可以降低维护成本,且方便以后扩展,随着你代码量的增加,对编程的更多接触就可以对这些内容有了更深层次的认识了。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • MasonM 提问者 #1
    老师,那这样的话,一般来说,实现类是不是不会出现除了接口定义以外的方法呢?
    2019-05-25 14:43:48
  • 好帮手慕阿满 回复 提问者 MasonM #2
    一般来说,实现接口中的方法即可。祝:学习愉快~
    2019-05-25 17:34:21
  • MasonM 提问者 回复 好帮手慕阿满 #3
    好的谢谢老师
    2019-05-25 17:57:54
提问者 MasonM 2019-05-25 13:40:26

标题我说错了

应该是

为什么这里要用接口引用指向实现类对象

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师