接口是一种规范,相当于一种协议。只要满足这种协议,就可以使用接口里的信息。
生活中的接口:
java接口类似于USB接口。
接口里放的是:静态常量、抽象方法
接口里的变量,默认为静态常量(默认添加了static final)
故 静态常量默认可以不加static final
int A=10;
static final int DEMO_A=10;
在接口中,抽象方法默认可以不加public abstract
public abstract void test();
void test2();
接口的特性:
接口不可以被实例化
(即不能创建对象)
实现类必须实现接口的所有方法,否则实现类必须是抽象类。
实现类可以实现多个接口,来弥补java不能多继承
接口中的变量都是静态变量。
接口的优点:
1、可以被多继承(一个接口是可以继承多个接口)
public interface a extends b,c{
//可以继承两个接口
}
2、设计和实现是完全分离的
3、更自然的使用多态
4、更容易搭建程序框架
5、更容易更换实现
接口和抽象类的区别: