一、接口:接口是一种特殊的抽象类;
1.接口中只有常量和抽象方法;
2.public final static 属性,常量;
3.java中只有单继承(即一个类只能有一个父类),但一个类可以实现多个接口;
4.用can来判断是否可实现接口;
二、定义接口的语法
public interface 接口名{
常量;
抽象方法;
}
三、定义实现接口的类的语法
public class 类名 extends 父类名 implements 接口名,接口名{
}
四、一个接口继承多个接口的类的语法
public class 接口名 extends 接口名,接口名{
}
五、关于接口的说明
1.使用interface关键字定义接口
2.接口中定义的属性都默认是由publi static final修饰的。
3.接口中的所有方法都默认是由 public abstract修饰的,接口没有构造方法;
4.实现接口的类中必须提供接口中所有方法的具体实现内容;
5.多个无关的类可以实现同一个接口(接口是一种能力,只要拥有这种能力就可以实现这个接口;);
6.一个类可以实现多个无关的接口,使用implements
7.一个接口可以继承多个接口
六、抽象类和接口的区别
1.抽象类通常表示一个概念,而接口表示一种能力;
抽象类:交通工具
接口:会飞的,带尖的,发光的;
2.定义不同:
抽象类中有属性,方法,构造方法,静态方法;
接口中有抽象方法和常量;
3.java是单继承的,一个类只有一个父类,但一个类可以实现多个接口,接口和接口之间是可以继承的,一个接口可以继承多个接口;
4.类和类之间是单继承;
七、Jdk8以后的接口
1.可以定义静态方法;
2.可以定义default方法;
3.当继承的两个接口有相同方法时,本类必须重写该方法,不写报错,不知道执行哪个;