关于接口
- 什么是接口?
- 接口是用来扩展类的功能的,是独立存在的一种,可以看作是特殊的抽象类。接口实现了类在继承方面的解耦。
- 接口是有固定结构的,一个接口中,只能含有抽象方法和静态常量,这就表示了,接口不可以被创建对象,它只能被类实现(使用关键字implements)或者被其他接口继承,且静态常量要赋值。
- 为什么要有接口?
- 由于一个类只能继承一个父类,那么问题来了,如果我想拥有父类没有的另外一个功能怎么办呢?1.这个子类自己创造一个功能方法出来。那么问题来了,如果其他的子类恰好也需要这个功能怎么办呢,这个子类也自己创造一个功能出来吗?这会使得代码过于冗余。此时就体现了接口,它将这个功能进行抽象化处理定义,当其他类需要这个功能时,只要implements这个接口,并重写其中的抽象方法就行了。
- 接口和抽象类的区别:
- 接口中只能包含抽象方法,而抽象类可以有普通方法。
- 接口可以被多继承,抽象类只能单继承