之前我们讲到了java4大特征的最后一个抽象的特征,其实在抽象这个特征里面,我们还有一个特征-接口,今天我们就来学一学接口. 用电脑,手机等电子产品来比喻接口,可以更好的理解,比如用符合接口的插头就可以了。 接口具有很好的扩展性,方便。 接口的由来 例子:奥拓奥迪都是汽车,汽车的维护都是可以用调节引擎和更换汽油的方法,那么奥拓和奥迪也都可以;但是有了更多的维护对象以后,比如说大货车,卡车等等,其他的对象不一定需要每一步维护,或者都不需要维护;又比如不同枪支有不同特性的例子。 因此,我么需要将维护独立于汽车之外,建立一种在不同交通工具之间的可共享机制来模拟维护这种可由外部选择性提供的功能。
用implements关键字可以让一个类实现接口 接口中的方法都是抽象的(abstract) 既能重用,也可以实现多重重用,所以,一个类是可以有多个接口的。 实现一个接口以后,要么变成抽象类,要么重写方法。 用接口的时机(灵活) 与生俱来的用抽象类来写,后面要添加的额外的用接口。
接口可以有构造方法吗? 接口是不可以用构造方法的,外面无法new一个新的对象,它是一个实现类,没有之类,所以构造方法是没有意义的; 特点: 不过可以有公共的静态常量。(public static final int a = 0 int a = 0)一个效果。 接口里所有方法都是公共的抽象方法,写不写修饰符等都是一样的。
抽象类和接口的区别: 抽象 接口 声明 abstract interface
属性 可以有属性,静态变量, 只能有公共静态常量 静态常量 可以省略不写
方法 既有抽象方法,也有 只有公共的抽象方法 普通方法 构造方法 有构造方法 没有构造方法 不能实例化 也不能实例化
使用 单根继承 多重实现