接口表明的是一个功能的集合,定义规范,全部的方法都是抽像方法,这是一种思想是一种规则,将这个种规则称为接口。java
public interface Jiekou { //这里增长功能抽像方法 public abstract void fun(); }
- 接口中的方法全是抽像方法
- 接口中使用interface表示
- 接口,不能new(缘由:抽像方法不能运行)
- 接口的实现,依靠类,类与接口之间的关系,实现关系,使用关键字implements
- 实现格式: class lei implements Jiekou{//功能方法} 代码以下:
public class TestDeom implements Jiekou{ @Override public void fun() { } //重写方法 }
- 将接口中的全部抽象所有重写,那么就是一个类,能够实例化对象
- 没有将接口中的全部抽象所有重号,或者是重写了一部分,这个类将是一个抽象类,不能实例化对象。
- 接口能够玩多态 A a = new B A表明接品,B表明的是实现类,实现类不能是抽象类。
- 接口能够做为方法的参数或者返回值
- 接口中有变量,可是不叫作变量,而是叫作常量
- 接口中所谓的常量都是有默认的修饰的 public static final 数据类型 常量名 = 值
- 使用成员:接口名.成员
方法:ide
- 全部的方法都是抽象方法,接口中的全部抽象方法都有默认修饰 public abstract
- 抽象方法的定义:修饰符 abstract 返回值类型 方法名(参数列表);
- 构造方法:接口中没有构造方法。类实现接口,重写全部的抽象,类能够实例化对象,JVM调用类的构造 方法,类中构造的第一行默认隐式super();
- 类确实调用了super().这个super不来自于接口,来自于类的父类,类若是没有直接继承任何父类,那么自动继承Object类,Object类是全部类的父类,因此super()是调用了Object的空参构造
接口的优点:
1.解除了类与类之间的单继承局限性
2.接口中由于都是抽象,因此尽可能要求实现类必须重写全部抽象方法,解除类与类之间的耦合性。
3.类在继承了一个父类的同时还能够实现多个抽象类code
public class TestDeom extends Test implements Jiekou{ public static void main(String[] args) { } }
4.接口与接口之间是继承的关系,使用关键字extends,接口能够多继承,例如interface A extends B,C A接口继承接口B和接口C。对象