1.第一接口不用class,用interface:
【修饰符】 interface 接口名 extends 父接口1,父接口2...
{
}
2.接口定义的是一种规范
不能包含构造器和初始化块定义,可以包含成员变量(只能是静态常量)、方法(只能是抽象实例方法、类方法或默认方法)、内部类(包括内部接口、枚举)定义。
3.默认修饰符 public abstract
定义接口中的普通方法时不论是否用public abstract,系统都会增加其来修饰。
例子具体说明
public interface Output
{
//接口里定义的成员变量只能是常量
int MAX_CACHE_LINE=50;
//接口里定义的普通方法只能是public的抽象方法
void out();
void getData(String msg);
//在接口中定义默认方法,需要使用default修饰,需要java8及以上
default void print(String...msgs)
//此处...表示传入的参数个数随意都会被放到msgs中
{
for(String msg:msgs)
{
System.out.println(msg);
}
}
//在接口中定义默认方法,需要使用default修饰,需要java8及以上
default void test()
{
System.out.println("默认的test()方法");
}
//在接口中定义类方法,需要使用static修饰
static String staticTest()
{
return"接口里的类方法";
}
}