2.1 接口的概念
接口也是属于抽象中的一种。
抽象:抽象类,接口
抽象类和接口中,都可以定义抽象方法,但是它们稍微还是有点区别
抽象类定义对象与生俱来的行为,接口定义后天扩展的行为
2.2 接口的特点
语法:
1、抽象类采用abstract定义,接口使用interface定义
2、抽象类中可以定义抽象方法,也可以定义非抽象方法,还可以定义构造器
3、接口中可以定义抽象方法,也可以定义一些特殊的非抽象方法,不能定义构造器,也不能定义成员变量,但是能够定义静态常量
4、抽象类只能单继承,而接口可以多继承,并多实现
5、接口中默认不需要使用public,以及abstract。但是抽象类中抽象方法需要使用public与abstract
6、抽象类由子类继承,接口需要使用实现类进行实现
设计:
与生俱来的抽象方法放置在抽象类中,后期扩展的放置在接口中
2.3 接口中的特殊非抽象方法
2.3.1 静态方法
静态方法:无法被实现类进行实现!它的调用方式:接口.方法();
public interface Sing {public static final double PI = 3.14;public static void sing() {System.out.println("唱:义勇军进行曲");}
2.3.2 默认方法
public default void sing() {
System.out.println("唱:义勇军进行曲");
}
2.4 接口的功能
1.使用接口暴露行为
接口暴露行为,通常结合多态参数来实现的,接口变量作为多态参数存在,凡是传递过来的实例,都只能是具备该接口行为的类型
2.使用接口规范类的行为
在接口中一旦定义了抽象方法,那么实现类就必须对抽象方法进行实现!这个就是规范类的行为。
