java 新建接口 java怎样创建接口_抽象方法

可能没有有接触过这方面知识点的同学,听到接口会问这是什么?其实也是很好解释解释,接口就是一个公共规范,我定义了一个接口,如果你想用就必须要遵守我的规范,不然就用不了。例如usb线的两端就是两个接口。

java 新建接口 java怎样创建接口_抽象方法_02

java中的接口也是同理,就是一个公共规范,要用我就必须遵守我的规则(重写接口定义的方法)。接口在Java中是一种引用类型,它里面最重要的就是基本的抽象方法(接口只是定义方法,并不实现方法的方法体,需要实现类来实现接口中方法)。

一 创建接口

接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么 接口的内部主要就是封装了方法 接口的定义,它与定义类方式相似,但是使用 interface 关键字。它也会被编译成.class文件,但一定要明确它并不是类,而是另外一种引用数据类型。

接口的格式:

public insterface 接口名称(){接口内容}

java 新建接口 java怎样创建接口_java_03

二 接口内容可以有些什么?

java中接口的内容跟它的一个版本有关系,不过所有的java版本都可以定义抽象方法(基本内容)。

在Java1.7中接口可以包含常量和抽象方法。

在Java1.8中接口可以包含默认方法,静态方法,常量,抽象方法。

在java1.9中接口可以额外的包含私有方法。

……

本文将以java1.8为基础进行讲解接口的基础性知识。

三 接口中的方法

1.抽象方法

接口的抽象方法定义需按照一定的格式如:

public abstract 返回值类型 方法名(参数列表);

注意:接口中的抽象方法.修饰符必须是固定的关键字:public abstract。但这两个关键字修饰符可以选择省略(方法三要素,根据业务进行选择),实现时必须全部实现。

java 新建接口 java怎样创建接口_抽象方法_04

2.默认方法

接口中的默认方法可以解决接口升级时的问题,可以选择继承或者重写但只能通过实现类的对象来调用。

格式:public default 返回值类型 方法名(参数列表){方法体};

java 新建接口 java怎样创建接口_默认方法_05

3.静态方法

静态与.class 文件相关,只能使用接口名调用,不可以通过实现类的类名或者实现类的对象调用。

格式:public static 返回值类型 方法名(参数列表){方法体};

注意不能使用实现类的对象来调用静态方法。正确的调用应该是:接口名称.静态方法。

java 新建接口 java怎样创建接口_java_06

注意: 子接口重写默认方法时,default关键字可以保留。

子类重写默认方法时,default关键字不可以保留。

四 接口的使用

接口的使用,它不能创建对象,但是可以被实现( implements ,类似于被继承)。一个实现接口的类(可以看做是接口的子类),需要实现接口中所有的抽象方法,创建该类对象,就可以调用方法了,否则它必须是一个抽象类。

1.接口不能直接的使用,必须有一个实现类来实现该接口中的方法。

格式:public class 实现类名称 implements 接口名称{}

2.接口的实现类必须覆盖重写(实现)接口中的所有抽象方法。实现接口方法时去掉abstract加上{方法体}即可。

java 新建接口 java怎样创建接口_java 接口的使用_07

3.创建实现类的对象进行使用。

java 新建接口 java怎样创建接口_默认方法_08

实现test01方法

java 新建接口 java怎样创建接口_java_09

调用test01方法

五 总结

接口interface是对一个行为的抽象,接口中可以定义常量(public final static 常量名;),抽象方法,默认方法,静态方法(注意接口中没有静态代码块)等。但是接口不能有构造方法且不能被实例化,接口需要实现类来实现它(接口可以拥有多个实现类,也就是接口可以被多实现);接口同时也可使用extends关键字来继承一个或多个接口的方法,即多继承;当一个类,既继承一个父类,又实现若干个接口时,父类中的成员方法与接口中的默认方法重名,子类则会就近选择执行父类的成员方法

#软件测试#