java如何定义接口?

java中接口的定义和实现

1.界面的定义

使用interface定义接口。接口的定义类似,也分为接口声明和接口体,其中接口体由常量定义和方法定义组成。定义接口的基本格式如下:

[Modifier]Interface Interface Name[[extends]的父接口名称列表] {

[公共][静态][最终]常数;

[公共][抽象]方法;

}

修饰符:可选,用于指定接口的访问权限,可选值为public。如果省略,则使用默认访问权限。

Interface Name:指定接口名称的必需参数,该名称必须是合法的Java标识符。一般来说,需要大写字母。

扩展父接口名称列表:可选参数,用于指定要定义的接口继承自哪个父接口。当使用extends关键字时,父接口名称是必需的参数。

方法:接口中的方法已定义但未实现。

比如定义一个计算的接口,其中定义了一个常数PI和两个方法。具体代码如下:

1公共接口

2 { ?

3最终浮动PI = 3.14159 f;//定义用来表示pi的常数PI?

4 float get area(float r);//定义一个计算面积getArea()的方法?

5 float get circumference(float r);//定义一个计算周长的方法,getCircumference()?

6 }

注意:

与Java类文件一样,接口文件的文件名必须与接口名相同。

2.接口的实现

定义接口后,可以在类中实现它。关键字implements可用于实现类中的接口,其基本格式如下:

[修饰符]类<类名>[扩展父类名][实现接口列表] {

}

Modifier:可选参数,用于指定类的访问权限。可选值为public、abstract和final。

类名:指定类名的必需参数,类名必须是合法的Java标识符。一般来说,需要大写字母。

Extensions Parent Class Name:可选参数,用于指定要定义的类继承自哪个父类。使用extends关键字时,父类名是必需的参数。

Implements Interface List:可选参数,用于指定该类实现了哪些接口。使用implements关键字时,接口列表是必需的参数。当接口列表中有多个接口名称时,接口名称用逗号分隔。

在类中实现接口时,方法的名称、返回值的类型、参数的数量和类型必须与接口中的完全相同,接口中的所有方法都必须实现。比如写一个名为Cire的类,实现5.7.1节定义的接口Calculate。具体代码如下:

1公共类Cire实现CalInterface

2 { ?

3公共浮动getArea(浮动r)

4 { ?

5浮动面积= PI * r * r//计算圆面积,赋给变量面积?

6返回区域;//返回计算出的圆面积?

7 } ?

8公共浮点getCircumference(浮点r)

9 { ?

10浮动周长= 2 * PI * r;?//计算圆的周长,赋给变量周长?

11回围;?//返回计算出来的周长?

12 } ?

13公共静态void main(String[] args)

14 { ?

15 Cire c = new Cire();?

16 float f = c . getarea(2.0f);?

17 system . out . println(float . tostring(f));?

18 } ?

19 }

在类的继承中,只能做单个继承,而在实现接口时,可以一次实现多个接口,每个接口之间用逗号隔开。此时,常量或方法名之间可能会有冲突。在解决这个问题时,如果常量发生冲突,需要明确指定常量的接口,可以通过“接口名”来实现。常数”。如果有方法冲突,只实现一个方法。下面通过一个具体的例子详细介绍上述问题的解决方法。