接口

1.接口的基础知识

 1.1 为什么需要接口

接口可以打破继承的单根性,用接口实现多继承

 1.2 什么是接口

接口是一种能力

接口是一种约束

 1.3 接口的语法

声明:

【修饰符】interface 接口名【extends 父接口1,父接口2……】{

//常量定义

//方法定义

引用:

Class 类名 extends 父类名 implements 接口1,接口2….

//类成员

2.接口的特性

接口不能实例化,接口中不能有构造方法

接口中的所有方法都是抽象方法,接口中的方法都会用public static修饰,即接口中只有全局抽象方法。

接口中可以定义常量,不能定义变量,接口中的属性都会自动用public s tatic final修饰,即接口中的属性都是全局静态变量。

在接口中定义的常量必须在定义时赋初始值。常量的字母一般全部大写。

接口的命名规则与类相同,如果是public 则整个项目可见,如果省略修饰符,则只在当前包中可见。

接口之间可以通过extends实现继承关系,一个接口可以继承多个接口。

接口不能继承类,类可以继承接口

接口的实现类必须实现接口的全部方法(重写接口的全部方法),否则必须定义为抽象类。

一个类只能有一个直接父类,但可以实现多个接口。

继承类的关键字extends必须在implemments关键字之前。

3.实现接口的步骤

编写接口(根据需求设计方法)。

编写类(实现接口的所有方法)。

类继承接口(用多态的方式使用)。

4.接口表示一种能力

一个类实现了某个接口,就表示这个类具备了某种能力。

没有具体的实现方法,更加自然的使用多态

5.接口表示一种约定

对继承的多个子类进行统一的约束,从而达到能够使用的要求

6.总结

接口不仅弥补了java只支持单继承的缺点,还利于代码的扩展和维护。接口类似与一个组件,需要时可以自由组装。

接口和类的区别在于:抽象类利于代码的复用,接口利于代码的维护。

很多接口名都是以able”为后缀的,就是表示:“可以做”。C#中接口名以“I”开头。

接口实现了约定和实现相分离的原则,通过面向接口编程,可以降低代码间的耦合性,提高代码的可扩展性和可维护性

抽象出接口:一是用在层与层之间,最忌讳耦合度过高和修改过于频繁,设计优秀的接口能解决这个问题。

二是用在不稳定的部分上,比如需求的变化性很大。

原文地址:https://www.cnblogs.com/Eason-chen/p/7642517.html