什么是接口
接口是比抽象类更加彻底的抽象,Java接口主要是对功能的描述和规范,接口中全都是抽象方法(JDK8之前)
接口的定义
public interface User {
}
JKD7及之前:
接口中定义的是常量和抽象方法
常量是默认由public abstract final修饰(常量用大写字母表示,多个单词用下划线),可以任意省略,建议全部省略
常量默认有final修饰,所以常量在定义的时候就需要赋值
方法默认由public abstract修饰(可以省略不写)
没有构造方法,因为抽象方法是可以继承的,所以抽象类有构造方法,而接口是比抽象方法更加抽象的,接口只能实现,不能继承。
接口和类的关系
一个类可以实现多个接口,实现接口的类称为实现类
实现类必须重写接口中的所有方法
接口和接口的关系
接口和接口是多继承的关系,一个接口可以继承多个接口
public interface User2 extends User1,User{
}
接口多继承的作用
规范合并,整合多个接口为同一个接口,便于子类实现。
扩展
JDK8及之后接口中新增:
1.默认方法(default),默认方法需要实现类的对象调用
2.静态方法,属于接口独有,只能使用接口名调用
私有方法(JDK9),private修饰的,可以是私有成员方法,可以是私有静态方法
作用:抽取多个默认方法中相同的代码,提高代码的复用性
最后
如果你对本文有疑问,你可以在文章下方对我留言,敬请指正,对于每个留言我都会认真查看。