接口

简介: 接口

概念

物理接口

指的是两个硬件设备之间的连接方式。硬件接口既包括物理上的接口,比如我们所以说的USB接口

Java接口

在Java中,接口表示一种规范/约束/要求实现者必须遵循该规范:用来约束使用者应该怎么做

规范和实现相分离的好处

主板上提供了USB插槽,只要一个遵循了USB规范的鼠标,就可以插入USB插槽,并与主板正常通信。至于这个鼠标是谁生产的,内部是如何实现的,主板都不需要关心(只要遵循了USB规范就可以插在主板上使用)。当鼠标坏了的时候,我主板不会坏

Java接口定义

概念

Java接口也是表示一种规范,使用抽象方法来去定义一组功能,实现者必须给提供方法的实现。

接口定义

interface 接口名称 {
}

接口当中的注意点

  1. 接口是没有构造器,接口是不能创建对象。
  2. 接口当中定义变量,都是全局的静态常量。
  3. 接口当中定义的方法都是公共的抽象的方法。
  4. 接口是可以继承,它是可多继承。interface 接口名称 extends 继承的接口名, 继承的接口名

接口实现

格式

类名 extends 其它的类 (只能继承一个类)implements 其它的接口(接口可以实现多个)

// 爬行动物规范
interface Iwalkable {
  public abstract void walk();
}
// 水生动物
interface Iswimable {
  void swim();
}
// 两栖动物
interface Iamphibiousable extends Iwalkable, Iswimable {
}

class Animal {
  String name;
  String Color;
}
// Cat实现了Iwalkable接口
// 实现关系有时候也称它是继承关系
class Cat extends Animal implements Iwalkable,Iswimable{
  // 覆盖的时候,子类的方法权限要比父类大,或者一样大,不能比它小
  public void walk() {
    System.out.println("走猫步");
  }
  public void swim() {
  }
}

接口与抽象类区别

相同点

  1. 都是被其它类实现
  2. 都不能实例化
  3. 都可以定义抽象方法,定义的抽象方法子类都必须得要覆盖

不同点

  1. 接口是没有构造器,抽象类当中是有构造器
  2. 抽象类可以包含普通方法和抽象方法,接口当中只能有抽象方法,不能有普通方法(带有方法体)
  3. 接口当中默认成员变量,要有初始值,都是静态的
  4. 方法:接口当中默认方法 public abstract 方法名;抽象类、默认的权限

面向接口编程

概述

把实现类对象赋值给接口类型的变量,多态的好处:屏蔽了不同类之间实现差异,从而达到通用编程。

接口多态

把实现类赋值给接口运行时,运行的仍是实现类

相关文章
|
6月前
|
C++
几个实用的C++函数接口
几个实用的C++函数接口
|
2月前
|
网络协议 Java 数据格式
|
12月前
接口能玩的小花招
接口能玩的小花招
49 0
|
Java
【接口的使用】
【接口的使用】
57 0
|
前端开发 Java
写一个接口该注意什么?
写一个接口该注意什么?
60 0
|
程序员
14 接口
14 接口
102 0
|
Java Maven
一文了解ConfigurationConditon 接口
在了解ConfigurationCondition 接口之前,先通过一个示例来了解一下@Conditional 和 Condition。
111 0
|
C# 索引
C#-接口
接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为。接口可有方法、属性、事件和索引器或这四种成员的任何组合类型,但不能包含字段。接口只包含了成员的声明,在继承的类中进行实现。
112 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
898 0