Java基础——接口

Posted 过气老学长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础——接口相关的知识,希望对你有一定的参考价值。

如果类要遵从某个接口,那么就履行这项服务。

接口不是类,这是两个不同的概念。接口是类的需求的描述

接口的特性:

  1. 接口不能实例化,但是可以声明一个接口变量用于存储接口实现类的对象。
  2. 可以使用instanceof关键字判断某个接口变量是否是某个接口的变量
  3. 接口也可以继承

创建一个接口

modified interface name{
    //常量
    [public static final] field;
    //方法(无实现)
    [public abstract] methods;
}

接口中的内容可以分为两部分:

  1. 常量
  2. 方法

在Java8之前,不可以在接口中实现方法,也就是说,接口中的方法没有方法体。接口中所有方法的实现都必须在接口的实现类中进行。

从Java8开始,这种情况出现改变。可以通过将方法声明为static和default实现。在接口的实现类中不需要重写这两类方法。

interface A {
    public static A get(){};
    default A gets(){};
}

接口的实现类

接口不能实例化,也就是说,接口不能创建对象。接口需要通过相应的实现类来证明自己的价值:

class Name implements Iname{
    //必须实现接口中的方法
}

一个类可以实现多个接口

class A implements Comparable, Cloneable{
    
}

实现类需要重写接口的所有方法,否则该实现类必须声明为abstract

命名冲突

  1. 如果某一个类实现了两个接口,这两个接口有相同的默认方法,那么实现类会使用哪个接口的方法?

只要有一个接口定义了默认方法,那么实现类必须重写方法

  1. 如果某个类实现的接口和所属的超类发生方法名冲突,那么类会继承哪一个方法?

类优先原则,继承并使用超类的方法

以上是关于Java基础——接口的主要内容,如果未能解决你的问题,请参考以下文章

java 代码片段

Java 8 新特性总结

Java语言基础之方法的设计

JSP基础

ajax与 axios的基础讲解(附代码及接口)

从父片段到选项卡片段的接口侦听器不起作用