1.与抽象类类似,接口在java中也是一种抽象类型,接口中的内容是抽象形成的需要实现的功能,接口更像是一种规则和一套标准
2.通过interface关键字定义接口,implement让子类实现接口
3.接口中的方法都是抽象方法(java8)
4.可以把接口理解成一个特殊的抽象类,但接口不是类
5.类描述的是一类事物的属性和方法,接口则是包含实现类要实现的方法
6.接口突破了java单继承的局限性
7.接口与类之间可以多实现,接口与接口之间可以多继承
8.接口对外暴露的规则,是一整套开发规范
9.接口提高了程序的功能扩展,降低了耦合性
interface xxx{
piblic void xxx();
}
当实现类与接口建立实现关系后,可以选择不实现接口中的方法,把自己变成一个抽象类
还可以选择实现接口中的所有抽象方法,把自己变成一个普通子类
接口不可以实例化,但可以建立多态对象(不常用)
一般创建接口实现类的对象进行测试
接口中没有构造方法,但它实现类的构造方法可以调用super();调用的是顶级父类Object的无参构造 如果一个类没有明确指定他的父类,那他默认继承定义父类Object
接口中没有成员变量,都是常量,当你定义一个变量没有修饰符时,默认加上
public static final
public static final int age =20;
接口中抽象方法可以简写,会自动拼接public abstract