1.接口的声明
接口类型,它与抽象类表面上有些相似,接口类型与抽象类都不能被实例化。
接口:可拍照的工具
相机–手机
/*表示所有能拍照的工具类型*/
public interface Photographable{
/*拍照*/
public voidtakePhoto();
}
2.实现接口
关键字implements
public class Camera implements Photographable{
public void takePhoto(){...};//实现拍照功能
}
public class CellPhone implements Photographable{
public void takePhoto(){...};//实现拍照功能
}
3.接口的语法规则
成员变量默认都是public、static、final类型,必须被显式初始化。
允许接口定义抽象方法,默认方法和静态方法。默认方法用default关键字来声明。
public interface MyIFC{
default void method1(){
//声明一个默认方法
}
static void method2(){
//声明一个静态方法
}
void method3();//声明一个抽象方法
}
接口方法默认是public类型,必须是public。
public interface MyIFC{
void method1();
public void method2();
protected void method3();//非法
}
接口之间可以继承
interface BaseIFC{
void method1();
void method2();
}
interface SubIFC extends BaseIFC{
void method3();
}