Java接口

Java接口

概述

接口中全是抽象方法,只描述应该具备的方法,没有具体的实现。

定义

使用interface定义接口

格式:

public interface 接口名{

              抽象方法;

              ....

}

类实现接口

使用关键字implements实现接口

class 类 implements 接口{

重写接口中的方法

}

特点

  • 在类实现接口后,该类会将接口的抽象方法继承过来,此时类要重写抽象方法,完成逻辑
  • 接口中无法定义普通的成员变量
  • 接口中定义变量,必须要用固定的修饰符修饰,public static final
  • 接口中定义方法,方法也要有固定修饰符:public abstract,(省略后,在生成class文件时还是会自动加上)
  • 可以继承多个接口

接口的多实现

     Java之所以不支持多继承,是因为当多个父类有相同功能时,子类调用会产生不确定性,因为父类中功能有主体,当调用时不确定运行那个主体内容,而因为接口中没有方法体,因此不会产生这个问题,所以接口可以多实现。

interface Fu1
{
    void show1();
}
interface Fu2
{
    void show2();
}
class Zi implements Fu1,Fu2    //采用多实现,同时实现多个接口(Java中不支持多继承)
{
    public void show1(){}
    public void show2(){}
}
interface Zi extends Fu1,Fu2   //多继承
{
    void show3();
}

类继承类同时实现接口

class FU    //定义类
{
    public void show(){}
}
interface Inter    //定义接口
{
    public abstract void show1();
}
class Zi extends Fu implements Inter    //继承类同时实现接口
{
    public void show1(){}
}

接口和抽象的区别

  • 抽象类为部分方法提供实现,避免子类重复实现这些方法;接口只能包含抽象方法
  • 一个类只能继承一个直接父类,但可以实现多个接口
  • 接口的实现类必须重写父类全部的抽象方法
  • 抽象类中的抽象方法不是必须全部重写
  • 抽象类可以没有抽象方法,这样的类不能实例化

 

posted @ 2020-12-28 16:10  我还有头发  阅读(26)  评论(0编辑  收藏  举报