一.接口基本概念:
接口是Java所提供的另一种重要技术,它可视为一种特殊的类,其结构和抽象类非常相似,是抽象类的一种变体。接口也是多个类的公共规范。
二.接口的使用原则:
使用接口时,必须遵守以下规则:
(1)接口必须有子类,子类依靠implements关键字可以同时实现多个接口。
(2)接口的子类(如果不是抽象类)必须实现接口之中的全部抽象方法,才能实例化对象。
(3)利用子类实现对象的实例化,接口可以实现多态性。
接口与一般类一样,本身也拥有数据成员与方法,但数据成员一定要赋初值,且不能再更改,方法也必须是“抽象方法”或default方法。也正因为接口内的方法除default方法外必须是抽象方法,而没有其他一般的方法,所以在接口定义的格式中,声明抽象方法的关键字abstract是可以省略的。
同理,因接口的数据成员必须赋初值,且此值不能在被更改,所以声明数据成员的关键字final也可省略,定义如下:
interfaceA//定义一个接口
{
public static String INFO="Hello World."; //全局常量
public void print(); //抽象方法
default public void otherprint()
{
System.out.println("default methods!");
}
}
下面是实例:
运行结果如下:
代码解析:
第1~10行定义了接口InterfaceA,其中定义了全局静态变量INFO,抽象方法print()及其默认方法
第12~19行定义子类subClass,实现接口InterfaceA
第25~27行实例化子类对象,并在调用子类实现的抽象方法和默认方法
第28行输出接口InterfaceA的常量INFO