关注“Java我最强”微信公众号,加入Java牛人专属的集中营!
广告完毕,说正事儿啦~
您的好友JaJa已上线
很多人在学习Java的初期都会有这么一个问题,这接口到底有什么用呢?接口的作用对于很多新手来说的确可能不容易理解,本着对新人认真负责的态度,JaJa来解释一下~~
通俗点讲:
接口就是个招牌。
就好比晚上去遛弯儿,走着走着饿了,看到一家第一佳大鸡排,你就会反应出在这买点东西吃的念头。显然“第一佳”的招牌就是个接口,你看到这个接口就知道这个店卖炸鸡排。
那么为什么要定义一个接口呢?这家店可以不挂招牌直接卖鸡排呀(直接写实现方法),然而这样顾客就没办法直接进店要一个爆浆大鸡排了。要么询问店家是否卖鸡排、地瓜条、鱿鱼圈(这就是反射)。
很显然,这样一家家的问实在是非常麻烦(反射性能很差)。要么,我们就要记住,春华路秋实街交叉口那家店卖大鸡排,惠忠路45号卖大鸡排(硬编码),这样我们要记住很多很多东西(代码量剧增),而且,如果有新的店卖大鸡排,我们也不可能知道(不利于扩展)。第一佳看到这篇文章麻烦把广告费结一下。
结合实践来讲:
你写接口你写实现,就不用写接口了。我写接口你来实现,接口就用上了。我不给你规定好了,你怎么知道该实现哪些内容呢。
更进一步,我写接口你实现,你今天不在,我明天请假,程序后天交工,那我今天必须把调用这个接口的代码写好。所以就需要接口中有函数,有明确的函数签名。我写个接口,再把调用函数写好,明天你把接口实现了,传个实例进来,交工。
Interface换个叫法就是contract,有点合同的意思。A实现了这个接口,代表A承诺能做某些事情。B需要一些能做某些事情的东西,于是B要求,必须实现了A接口,才能被我调用。实际上也就是个“规范”。
换学术一点讲:
接口作用有三,
1、实现多重继承,因为Java是单根语言。
2、便于实现各种框架,Java 的各种框架中,都是拿接口调来调去。一旦你实现了这个接口,你的代码就嵌入了框架。
3、为了实现各种规范。
关于接口,你觉得是怎么样的呢?或者Java学习使用中有没有遇到什么困惑或者好玩的事?欢迎分享给我们哦~~
本文部分观点参考知乎
最后,大家别忘了微信搜索“Java我最强”获取更多Java资讯哦~~~