接口(Interface),在 JAVA 编程语言中是一个抽象类型,是抽象方法的集合。接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。
如果一个类只由抽象方法和全局常量组成,那么这种情况下不会将其定义为一个 抽象类 。只会定义为一个接口,所以接口严格的来讲属于一个特殊的类,而这个类里面只有抽象方法和全局常量,就连 构造方法 也没有。
定义与实现
public interface Test{
public static final int num; //成员常量具有固定的修饰符:public static final
public abstract void method; //成员函数具有固定的修饰符:public abstract
}
public class Testimpl implements Test{
// 实现接口中的所有方法
…..
}

接口特性:
接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是
public abstract,其他修饰符都会报错)
接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量(并且只能是 public,用 private 修饰会报编译错误)。
/*
*功能:到达指定的时间发出通告
*/
public interface ActionListener{
void actionPerformed(ActionEvent event);
}
class TimePrinter implements ActionListener{
//此处ActionEvent参数提供了事件的相关信息
public void actionPerformed(ActionEvent event){
Date now = new Data();
System.out.println(“At the tone, the time is” + now);
Toolkit.getDefaultToolkit().beep();
}
}
//然后构造这个类的一个对象,并将它传递给Timer 构造器 。
ActionListener listener = new TimePrinter();
Timer t = new Timer(10000, listener);
接口中不能包含实例域或 静态方法 。

接口与接口之间可以是继承关系,而且可以实现多继承。
public interface Moveable{
void move(double x, double y);
}
public interface Powered extends Moveable{
double milesPerGallon();
}
尚学堂12大精英团队+各类实战项目,真正实现1+1>10的目标效果。帮助学员迅速成长,持久腾飞,成就学员“高富帅”人生;帮助企业技术和团队成长,成就百年中华名企;助力中国持续成为 世界强国 而贡献力量。尚学堂12大精英团队,覆盖IT行业十大领域,实战团队240人,服务学员累计超过10万人,就业合作企业数量500+。