☕️Java基础 接口

接口是 Java面向对象特征的一部分,下面我们进行了解

接口

  • 相信大家会经常听见XX接口,如USB接口、Type-C接口等等,大家都统一用这个USB线进行充电,传输数据,是一种串口总线标准,这个标准就是JAVA里面的接口。
  • 接口就是一套协议,一套行为规范,为了降低耦合性。
1.定义

接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。

2.接口内部元素
  • (1)接口不能被实例化(没有构造方法),只能被implements实现
  • (2)定义变量(只能是静态成员变量) (默认修饰符 public static final) 静态直接访问
  • (3)方法 :抽象方法(常用,不需要自己实现,谁用这个接口谁实现)
    (接口里面默认修饰符 public abstract) 必须实现接口里定义的抽象方法 用 implements实现
    类方法、默认方法、私有方法:可以实现
//用这种方式替代枚举
interface Season{
    int Spring = 1;
    int Summer = 2;
    int Autumn = 3;
    int Winter = 4;
}
interface t2{. //interface来定义

}

public interface DateInteraction {
    interface Input{
        void input();
    }
    interface Output {
        void output();
    }
}
//拿出来也可以
interface Input{
    void input();
}
interface  Output {
    void output();
}
  • (4)内部接口 : 实现内部接口只需要 接口.内部接口
3.抽象类与接口的区别
  • (1) 抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。
  • (2) 抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。
  • (3) 接口中不能含有静态代码块以及静态方法(用 static 修饰的方法),而抽象类是可以有静态代码块和静态方法。
  • (4) 一个类只能继承一个抽象类,而一个类却可以实现多个接口。
4.接口与普通类的关系
  • 普通类可以各种变量,接口只能定义static和final变量,当定义一个int类型变量 int前 默认显示 static final
  • 普通类可以被实例化,有构造方法
  • 接口不可以被实例化,只能有抽象方法,只能被类进行实现(继承)
  • 一个类可以继承多个接口(实现多个接口的方法)
5.接口代码实现
  • 简易 设备输入输出接口代码

定义一个数据交换接口

// 定义一个数据交换接口
public interface DateInteraction {
    interface Input{
        void input();
    }
    interface Output {
        void output();
    }
}

硬件设备实现接口 (电脑与外部进行交互 必须实现与数据交互的接口 通过implements实现)

public class Macbook_Pro implements DateInteraction.Input,DateInteraction.Output{
    @Override
    public void input() {
        System.out.println("input");
    }
    @Override
    public void output() {
        System.out.println("output");
    }
}
6.接口之间的继承
  • 接口之间的继承与类的继承类似
  • 类不能多继承;但接口可以实现多继承,继承的接口之间用 逗号, 隔开

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录:一、 接口的概念二、 接口的声明三、 接口的实现四、 接口中成员变量的特点五、 接口中成员方法的特点六、 类...
    千面娇你妹的娃阅读 2,555评论 0 4
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 7,577评论 0 11
  • 01接口的概念 A:接口的概念接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”。接口只描述所...
    Tyihou阅读 1,670评论 0 2
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 4,924评论 0 5
  • “简单不先于复杂,而是在复杂之后.” —— Alan Perlis 接口 首先,理解多继承,什么是多继承----多...
    白衬衫少年阅读 4,991评论 0 12