很奇怪java中为什么实现了接口就拥有了功能,接口中不是只定义了一些方法,里头没有方法体的吗

很奇怪java中为什么实现了接口就拥有了功能,接口中不是只定义了一些方法,里头没有方法体的吗,第1张

接口只是一种规范,也就是对调用方暴露的方法的定义,也可以说它是一个门面,真正的功能还是由实现类提供的,就算你通过接口的方式调用方法,最终还是由实现类做具体的事请。

针对你的问题,可以理解为实现类实现了某个接口,就有了这个接口所定义的功能,也就是说,接口对功能做了定义,而实现了实现这个接口,也就相应的实现了相应的功能。

何必这么死呢,系统定义一个方法,吃饭,你实现了,系统就知道你会吃饭了,就这么简单。你只负责怎么吃饭,怎么叫你吃饭,不是你管理的事情。

接口是类,你实现接口那就是他的子类,你自然就有接口的方法了,人不管你实现接口的类名是什么,只要确定你实现了这个接口就行了,这就是多态,子类对象可以直接拿父类引用来用的。

比如:你一个xxx这个类实现了Runnable,那人家就可以拿Runnable类型引用来使用你的那个xxx对象了,接口目的是定义行为,我只要知道你的行为就行,就像吃饭,系统只要知道你会吃饭就行,而不管你是动物还是人。理解这个问题关键是多态,系统不需要知道你的类名,他只要知道你会吃饭就行了,至于是男是女不是他关心的,他只关心接口定义的行为,其他信息他不想知道。

你还是看继承和多态把。3大基本性质要熟记于心,不只是记得个概念就完事的,要联系到实际代码。

要是不明白就hi给我留言!

http://baike.baidu.com/view/1486379.htm?fr=ala0 看看把!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11616988.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存