接口(interface)

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 接口(interface)

@TOC


接口(interface)概述

接口是类似抽象类的抽象化类型,自己不能实例化

接口就是一种公共的规范标准,只要符合规范标准,大家就可以通用
和Java里的抽象类类似,但是比抽象类更加抽象,接口内容要求比抽象类更苛刻

注意 : 每个类的默认父类是Object,但是可不能将接口和类混淆,Object类不是接口的默认父类


一、接口是什么?

接口:是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么接口的内部主要就是封装了抽象方法,静态常量,(在JDK8之后)接口里面又可以定义静态方法,与默认方法.
接口定义 : 接口的定义,它与定义类方法相似,但是使用interface关键字。它也会被编译成 .class文件,但一定要明确它不是类,而是另外一种引用数据类型。

public interface Animal{
//内容

}

二、接口与类的区别

  1. 接口不能用于实例化对象
  2. 接口没有构造方法
  3. 接口中所有的方法必须是抽象方法
  4. 接口中不能包含成员变量,除了 static 和 final 变量
  5. 接口不是被继承,而是被实现
  6. 接口支持多继承

三、接口与抽象类的区别

  1. 抽象类里面的抽象方法如果子类未实现,那么子类也是抽象类
  2. 接口里面也有抽象方法,子类实现抽象类,就必须实现父类所有的抽象方法,不然将该类定义成abstract类
  3. 接口实现的关键字是implements,而抽象是使用extends进行继承
    4.在接口中,定义方法时候 public abstract默认存在, 定义成员时 public static final 默认存在
    5.抽象类和接口 都不能被实例化,只有它的子类能继承或者实现来实例化
    6.接口还可以继承父类,并且可以继承一个或多个,多个之间用逗号隔开
    7.继承的多个父接口里面可能抽象方法名称一致,那么子类只需要实现一个
    8.静态方法必须使用 接口名称 . 静态方法进行调用
    9.默认方法必须使用子类 . 默认方法进行调用

四、 实现接口演示

这里定义一个A , B, C接口, 一个实现接口的类Test

这里演示通过类实现多接口
```go
public interface A {

void a();

}


```go
public interface B {

    void b();
}
public interface C {
   

    void c();
}
public class Test implements A,B,C{
   

    @Override
    public void a() {
   

    }

    @Override
    public void b() {
   

    }

    @Override
    public void c() {
   

    }
}

这里演示通过接口继承,类实现单接口,间接实现多接口

public interface A extends B,C{
   

    void a();
}
public interface B {
   

    void b();
}
public interface C {
   

    void c();
}

public class Test implements A{
   

    @Override
    public void a() {
   

    }

    @Override
    public void b() {
   

    }

    @Override
    public void c() {
   

    }
}
相关文章
|
1月前
|
C++
几个实用的C++函数接口
几个实用的C++函数接口
|
1月前
接口
使用使用接口的时候,需要注意: 1.接口是没有静态代码块或者构造方法的。 2,一个类只能继承一个,但是一个类可以同时实现多个接口。 格式: public class MyInterfaceImpl implements MyInterfaceA,MyInterfaceB {} 3.如果实现类所实现的多个接口当中,存在重复的抽象方法,那么只需要覆盖重写一次即可。 4、如果实现类没有覆盖重写所有接口当中的所有抽象方法,那么实现类就必须是一个抽象类。 5如果实现类锁实现的多个接口当中,存在重复的默认方法,那么实现类一定要对冲突的默认方法进 行覆善重写。 6.一个类如果直接父类当中的方法,和接口当中的
22 6
|
11月前
|
C#
C# 接口
C# 接口
47 0
|
10月前
|
前端开发 Java
写一个接口该注意什么?
写一个接口该注意什么?
43 0
|
程序员
14 接口
14 接口
81 0
|
Java Maven
一文了解ConfigurationConditon 接口
在了解ConfigurationCondition 接口之前,先通过一个示例来了解一下@Conditional 和 Condition。
53 0
|
C# 索引
C#-接口
接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为。接口可有方法、属性、事件和索引器或这四种成员的任何组合类型,但不能包含字段。接口只包含了成员的声明,在继承的类中进行实现。
93 0
|
Java
接口详解介绍
接口详解介绍
114 0
|
C++
使用C++的接口
#include "stdafx.h"using namespace std;//abstract interfacesinterface IX...{    virtual void _stdcall Fx1()=0;    virtual void _stdcall Fx2()=0;};interface IY...{    virtual void _stdcall Fy1()=0
877 0