谈到面向对象就不得不说接口,在学习之初,接口让我很困惑,但随着实践对它的理解也逐渐明朗。
所谓接口(interface),就好比USB接口,是一种强制性的规范,所有的生产厂商都要遵循。同理,放在编程中就体现为一套公用的方法。其中的属性和方法都以final定义。
是不能进行随意更改。谈到这里有些童鞋可能会问,为什么要使用接口呢?
接口:1、何处使用?当多个类有共通的属性和方法的时候,把属性和方法提取出来;2、怎样使用?将通用的属性和方法提取出来作为一个接口,而让其他类去实现;3、作用:接口中的方法可以在不同的地方被不同的类实现,而实现可以具有不同的行为(功能),更重要的一点是接口补充了单继承,因为java只能单继承,但可以多实现 ;
接口很容易与抽象类相混淆,两者最大的区别:1、抽象类可提供某些方法的部分实现,而接口则不可以,若向接口中添加一个新方法则实现此接口的类就必须也实现这个方法。这可以算是java接口的一个缺点吗?那为什么又不使用抽象类呢?它们之间又有些什么故事呢?
可能仔细的童鞋已经看出,抽象类说到底它还是一个类。在前面提到过,类只能继承,而继承又只能单继承,所以又违背了使用接口的初衷。万物皆有利有弊,关键看利大于弊还是反之。
编码阶段在后续文章有相应介绍。