南昌Java培训
达内南昌中心

0791-88193285

热门课程

达内:java中接口的意义

  • 时间:2016-02-25
  • 发布:南昌java培训
  • 来源:慕课网


    java中都是抽象的方法,还要去实现,为什么要实现,直接实现方法行不行?为什么一定要用接口,有什么意义呢?南昌达内java培训专家就来解答这些问题,并生动形象的说一下接口的作用。

    接口就是规范一下方法名的定义,便于日后的维护,就像猫叫狗叫,实现一个叫声接口然后实现,这样你调用的时候都是调用同一个方法,统一命名就是这一感觉。

    可以实现多态

    接口有点类似于父类,里面包含抽象方法和静态常量,抽象方法要在实现类重写 ,如果你觉得没必要,肯定是因为你需求不够。

    usb接口是干什么用的?

    直接实现,就相当于把U盘直接焊在主板上, 想要换摄像头的时候,就得把U盘焊下来,再把摄像头焊上去。 

    usb协议就是java中的接口,我要充电,只需要看说明书知道你这个充电器是基于usb协议的我拿来用即可。 同样生产充电器的既然说了他基于usb协议,就必须按照usb协议来生产 。焊上去,耦合性高。可插拔,耦合性低。接口就是用来降低耦合性的。 

    接口中定义对象的基本行为,而实现类来实现行为的具体方式 。

    举个例子来说,我要定义在数据库读取用户数据的类 UserDao,而正确的做法是把UserDao定义为接口, 然后写一个类实现 UserDao 接口,假设这个类叫 UserDaoImpl  UserDao u = new UserDaoImpl() 这时还看不出接口的作用,加入你原来的接口实现是针对 MySQL,现在你要换成 Oracle 数据库,你可以重新写一个实现类 UserDaoOracleImpl UserDao u = new UserDaoOracleImpl() 你要做改变的只有这一行代码,加入你使用了Spring框架就更简单了 @Autowired UserDao userDao; 然后你在配置里配置一个 UserDaoXXXImpl 的 Java Bean,Spring 会给你自动注入进来。

    使用接口让需求改变减小对源代码的影响,减少了代码耦合度,利于项目开发和测试。这也是组合大于继承的编程思想,也就是面向对象编程后来的面向接口编程。

    你如果不写接口,也就是开发时有一些固定代码,你没有接口就意味着要无数遍重新写,有了接口直接实现就行。

    接口是多态的一中表现形式,多态是什么,多态是java的三大特征之一。

    简单的说 接口就是协议,协议就是你跟别人达成的约定,所以接口就是约定。 

    举个例子

    你写了一个集合类,存放一些类的对象,但是要求是每个对象加入到这个类中都要打印一下信息通知他已经加进来了。这个功能的实现就确保这些对象中有一个方法,就是通知

    但是所有对象都能加入这个集合类吗?不是吧,集合类说必须实现这个通知方法的类的对象才能加入,用什么保证呢?就用接口,你这个类实现了我这个notify接口了,我就认为你有这个通知方法,那么我就能调用这个方法,别人没实现这个接口的对象,即使有这个notify方法,我也认为你没有,因为你没跟我达成约定。

    而实现了这个接口的类,就是和集合类达成了约定,就必须要实现通知的方法。 你这个类实现了接口,就是告诉我你能做到我想要的,因此,实现接口的类一定要实现里面的方法。

    




原文链接:http://www.imooc.com/article/4887
上一篇:达内:什么是拆箱与装箱
下一篇:达内推出五大高端课程,推动IT培训进入培优时代

恭喜达内获得《产学合作协同育人项目合作伙伴奖》

达内Java大数据捷报频传,最高薪资15000元

中传学子参加达内Java培训,转身成为Java工程师月薪12.5K

本科生求职难参加达内Java培训,获11K高薪入职上海睿民

选择城市和中心
贵州省

广西省

海南省