interface
1.接口使用interface来定义
2.java中,接口和类是并列的结构
3.接口的定义,定义接口中的成员
3.1 jdk7及以前:只能定义全局常量和抽象方法
全局常量:public static final 的,但书写时可以省略:
例如:public static final int x=1;相当于 int x=1;
抽象方法:public abstract的
3.2jdk8,除了定义全局常量和抽象方法以外,还可以定义静态方法、默认方法
4.接口中不能定义构造器!意外这不能实例化。
5.java开发中,通过接口让类去实现(implement)的方式来使用。
如果是实现类覆盖了接口中的所有抽象方法,则此实现类就可以实例化
如果实现类没有覆盖接口中的所有抽象方法,则此实现类仍为一个抽象类。
6.接口与接口之间可以实现多继承,
格式:interface CC extends AA,BB,·······{
}
7.接口的使用体现了多态性
8.java实现了多个接口,弥补了Java的单继承性。
package com.itweiting.interfacedemo;
public class InterfaeDemoTest {
public static void main(String[] args) {
System.out.println(Fly.MAX_SPEED);
System.out.println(Fly.MIN_SPEED);
Plane plan = new Plane();
plan.flystart();
plan.stop();
}
}
//定义接口
interface Fly {
// 全局常量
public static final int MAX_SPEED = 7900;
int MIN_SPEED = 1; // 省略public static final
// 定义抽象方法
public abstract void flystart();
void stop(); // 省略public abstract
}
//实现类实现接口
class Plane implements Fly {
@Override
public void flystart() {
System.out.println("飞机起飞");
}
@Override
public void stop() {
System.out.println("飞机降落");
}
}