Java的接口

作者: 小虎哥的技术博客 | 来源:发表于2022-07-26 15:50 被阅读0次

接口将方法声明与实现分离,一个接口可以有多个实现类,一个类也可以实现多个接口。

定义接口

使用interface关键字。如public interface Life{}

这里定义两个接口:Work(工作)接口,Life(生活)接口。

接口中的方法都是public的,并且可以省略不写,如void makeMoney();

public interface Work {
    // 赚钱
    void makeMoney();
}
public interface Life {
    // 玩游戏
    void playGame();

    // 默认方法(Java8)
    default void sleep() {
        System.out.println("睡觉");
    }

    // 静态方法(Java8)
    static void print() {
        System.out.println("静态方法");
    }
}
  • 接口可以有默认方法静态方法,如Life接口中的sleep()方法和print()方法。

实现类

实现接口用implements关键字,如class Student implements Life, Work{}

一个类实现一个接口必须要实现该接口所有的接口方法。

如下:Student学生类实现了LifeWork接口,需要实现playGame()makeMoney()方法。学生要工作也要生活~

public class Student implements Life, Work {
    @Override
    public void playGame() {
        System.out.println("学生也要玩游戏");
    }

    @Override
    public void makeMoney() {
        System.out.println("学生也要赚钱");
    }
}

使用接口

public class Demo {
    public static void main(String[] args) {
        Student a = new Student();
        a.makeMoney();
        a.playGame();
        a.sleep();

        Life life = new Student();
        life.playGame();
        life.sleep();

        Work work = new Student();
        work.makeMoney();
    }
}
  • 可以用接口引用接收实现类对象,如Life life = new Student();,因为Student实现了Life接口。
  • 用接口调用方式时,如life.playGame();编译器在执行的时候可以准确的找到具体对象的方法并执行(后期绑定/动态绑定)。

类关系图

如下是类关系图,可以看到实现类两个箭头指向两个接口,说明Student类实现了WorkLife接口。

Student.png

结语

关注微信公众号:小虎哥的技术博客

相关文章

  • android JNI NDK入门

    1、JNI(Java Native Interface) Java本地接口,又叫Java原生接口。它允许Java调...

  • 深入理解Java接口

    从java接口是什么到为什么,理解java接口,主要解决三个问题 1.java接口是什么2.java接口为什么3....

  • Eclipseji编辑器——创建java接口

    打开新建 Java 接口向导 新建 Java 接口向导可以创建新的 Java 接口。打开向导的方式有: 点击 Fi...

  • 认识java(一)

    原创 java输入输出 java方法 java常用容器类和接口 外部排序接口:compatator内部排序接口:c...

  • JNI&NDK

    JNI: Java Native Interface (Java本地接口,本地接口即C和C++开发的接口) → 调...

  • JNI调用java自定义类

    一,注册java方法和jni方法相对应 二,通过接口传递java类java定义接口 c++定义接口 三,java层...

  • JAVA 核心笔记 || [8] 接口

    JAVA 接口 JAVA 接口可以有方法和变量,但是方法是抽象的 JAVA 接口 指定做什么 而不是 具体怎么去...

  • java成神之路---集合框架

    标签(空格分隔): java java集合类库的设计思想:“接口与实现分离” java类库中的集合接口和迭代器接口...

  • kotlin的接口

    kotlin的接口和java的使用几乎一样Java是单继承多接口的语言,kotlin也是如此,java中是实现接口...

  • Collection接口

    java中的java.util.Collection接口是集合的顶级接口,继承了Iterable接口,jdk中并没...

网友评论

    本文标题:Java的接口

    本文链接:https://www.haomeiwen.com/subject/kdvoirtx.html