什么是接口?
接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的时候,在根据具体情况把这些方法写出来
语法:
interface 接口名
{
属性
方法(1抽象方法 2默认实现方法 3 静态方法)
}
class 类名 implements 接口
{
自己的属性
自己的方法
必须实现的接口的抽象方法
}
eg:
public interface Usb {
//定义一个接口 ,接口本身就是一个抽象的概念
//在接口中,抽象方法可以省略abstract关键字
//接口中方法都是public的,可省略
void start();
public void end();//抽象的方法
//在jdk8后,可以有默认实现方法,需要有defaukt关键字修饰
default public void ok()
{
System.out.println("ok");
}
//jdk8后 静态方法也可以
public static void go()
{
System.out.println("go");
}
//抽象类实现接口,可以不用实现接口方法
}
abstrct class AA implements Usb
{
}
细节:
1.一个类可以同时实现多个接口
2.接口中的属性只能是final的,实际是public final static (可省略)
3.访问接口的属性,接口名.属性名
4.接口不能继承其他类,但可以继承其他多个接口
5.接口的修饰符只能是public或默认,这点和类的修饰符是一样的。
接口与继承
接口可以说是对java单继承机制的补充。就像人天生 会跑,会笑,不会游泳,但游泳可以学习,即通过接口,对象学习一种方法。简单来说,我们只有一个爸爸(继承),但可以有很多师父(接口).