您的位置 首页 java

大数据编程入门:Java接口

Java接口 是一系列方法的声明,是一些方法特性的集合,接口只有方法特性,没有方法实现,因此,这些方法可以在不同的地方由不同的类实现,并且这些实现可以有不同的行为,今天小编将为大家带来大数据编程入门: java 接口这篇文章。

一、Java接口概念

接口不是类,接口的编写方式与类相似,但它们属于不同的概念。类描述对象的属性和方法,接口包含类实现的方法。

除非实现接口的类是抽象类,否则它定义了接口中的所有方法。

接口不能实例化,但可以实现。实现接口的类必须实现接口中描述的所有方法,否则必须声明为抽象类。此外,在Java中,接口类型可以用于声明变量。它们可以是空指针,也可以绑定到由该接口实现的对象。

1、接口与类相似点

A. 一个接口可以有多个方法。

B. 接口文件保存在.java末尾的文件中,文件名使用接口名。

C. 接口的 字节码 文件保存在.class末尾的文件中。

D. 接口对应的字节码文件必须位于与包名匹配的目录结构中。

2、接口与类的区别

A. 接口不能用于实例化对象。

B. 接口没有构造方法。

C. 接口中的所有方法都必须是抽象方法。Java8之后,界面中可以使用default关键字修改的非抽象方法。

D. 接口不能包含成员变量,但 static 和 final变量除外。

E. 接口不是由类继承的,而是由类实现的。

F. 接口支持多继承。

3、接口特性

A. 接口中的每个方法也是隐式抽象的。接口中的方法将被隐式指定为public abstract(只有public abstract,其他修饰符将报告错误)。

B. 接口可以包含变量,但接口中的变量将被隐式指定为 public static final 变量(并且只能是public的,如果用 private 修改,则会报告编译错误)。

C. 接口中的方法不能在接口中实现,但只有实现接口的类才能在接口中实现方法。

4、抽象类和接口的区别

A. 抽象类中的方法可以有方法体,即可以实现方法的特定功能,但不能实现接口中的方法。

B. 抽象类中的成员变量可以是各种类型,而接口中的成员变量只能是public static final类型。

C. 接口不能包含静态代码块和静态方法(用static修改的方法),而抽象类可以有静态代码块和静态方法。

D. 一个类只能继承一个抽象类,但一个类可以实现多个接口。

二、接口的声明

下例展示接口的声明语法格式:

[可见度] interface 接口名称 [extends 其他的接口名] {

// 声明变量

// 抽象方法

}

interface关键字用于声明接口,下面是一个简单的接口声明示例。

该接口具有以下特点:

A. 接口是隐式抽象的。声明接口时,不必使用abstract关键字。

B. 接口中的每个方法也是隐式抽象的,声明不需要abstract关键字。

C. 接口中的所有方法都是公共的。

示例:

三、接口的实现

当一个类实现一个接口时,它实现接口中的所有方法。否则,必须将该类声明为抽象类。

类使用implements关键字实现接口。在类声明中,implements关键字放在类声明之后。

要实现接口的语法,可以使用以下公式:

…implements 接口名称[, 其他接口名称, 其他接口名称…, …] …

示例:

运行结果:

重写接口中声明的方法时,需要注意以下规则:

A. 类在实现接口方法时不能抛出强制异常,只能在继承接口的接口或抽象类中抛出强制异常。

B. 类在重写方法时应保持一致的方法名称,并应保持相同或兼容的返回值类型。

C. 如果实现接口的类是抽象类,则不需要实现接口的方法。

在实现接口时,应注意以下规则:

A. 一个类可以同时实现多个接口。

B. 一个类只能继承一个类,但它可以实现多个接口。

C. 一个接口可以继承另一个接口,这类似于类之间的继承。

四、接口的继承

一个接口可以继承另一个接口,这类似于类之间的继承。接口继承使用extends关键字,子接口继承父接口的方法。

以下Sports接口由Hockey和Football接口继承:

Hockey接口声明了四个方法,并从Sports接口继承了两个方法。这样,实现Hockey接口的类需要实现六个方法。

类似地,实现Football接口的类需要实现五个方法,其中两个来自Sports接口。

五、接口的多继承

在Java中,类的 多重继承 是非法的,但是接口允许多重继承。

在接口的多重继承中,extensions关键字只需使用一次,后跟继承接口。具体如下:

public interface Hockey extends Sports, Event

上述程序片段是合法定义的 子接口 。与类不同,接口允许多重继承,而Sports和Events可以定义或继承相同的方法。

六、标记接口

最常见的继承接口是不包含任何方法的接口。

标记接口是没有任何方法或属性的接口。它只表示它的类属于一个特定的类型,这个类型可以被其他代码测试并允许做一些事情。

标记接口功能: 简单生动地说,就是标记一个对象,使该对象具有一个或一些特权。

例如,java.awt.event包中继承自MouseListener接口的java.util.EventListener接口的定义如下:

package java.util;

public interface EventListener

{}

没有任何方法的接口称为标记接口。tag接口主要用于以下两个目的:

A. 创建公共父接口:

就像EventListener接口一样,它是由许多其他接口扩展的 java API ,您可以使用标记接口来建立一组接口的父接口。例如,当接口继承EventListener接口时, Java虚拟机 (JVM)知道该接口将用于事件的代理方案。

B. 向类添加数据类型:

这种情况是标记接口的最初目的,实现标记接口的类不需要定义任何接口方法(因为标记接口中没有方法),但该类通过多态性成为接口类型。

以上就是关于大数据编程入门:Java接口这篇文章的全部内容了,希望可以帮助到大家~

文章来源:智云一二三科技

文章标题:大数据编程入门:Java接口

文章地址:https://www.zhihuclub.com/184123.shtml

关于作者: 智云科技

热门文章

网站地图