1. 接口是java中最重要的概念,可以将接口理解为一种特殊的类,里面全部是由全局变量和公共的抽象方法做组成,
可以说如果一个类由全局常量(static final声明)和抽象方法组成,就可以将其定义为一个接口。
2.接口的定义格式:
interface 接口名称{
全局常量;
抽象方法;
}
3. 对于接口来讲,因为其在定义的时候已经定义了其组成就是全局常量和抽象方法,所以在开发中往往可以简化其定义。
例如:interface A{
public static final String AITHOR=“michael“;
public abstract void print();
public abstract String getInf o();
}
可以简化成:
interface A{
String AITHOR=“michael“;
void print();
String getInf o();
}
以上两种定义方式是完全一样的,没有任何区别。
4. 接口的图形表示
接口的图形可以按照类图的形式表示,也可以使用一个”⭕“表示。
5. 实现接口
1.与抽象类一样,接口要使用必须通过子类,子类通过implements关键字实现接口
2.实现格式:
class 子类 implements 接口A,接口B,....{ }
接口的使用中必须有子类,子类如果不是抽象类则必须覆写全部抽象方法,implements
关键字实现,一个子类可以同时实现多个接口。
3.若一个子类实现了两个接口,若子类不是抽象类,则需覆写两个接口中的全部抽象方法。
实现两个接口的类图表示:
6. 继承抽象类实现接口
1.一个子类可以同时继承抽象类和实现接口。
2.格式: class 子类 extends 抽象类 implements 接口A,接口B,...{ }
3.在使用中,一个抽象类可以实现一个接口,那么对于抽象类的子类
则就必须同时覆写接口和抽象类中定义的所有抽象方法。
7. 接口的继承
1.一个接口不能继承一个抽象类,但是却可以通过extends关键字同时
继承多个接口,实现接口的多继承。
2.格式: interface 子接口 extends 父接口A,父接口B...{ }
注意:若子类实现子接口时,若子类不是抽象类,则要覆写子接口
及其所有父接口的抽象方法。