Dotcpp  >  编程教程  >  Java接口与实现  >  Java实现接口

Java实现接口

点击打开在线编译器,边学边练

在Java语言中,接口由类来实现,以便使用接口中的方法。一个类需要在类声明中使用关键字implements声明该类实现一个或多个接口。如果实现多个按口,用逗号隔开接口名。


例如:

class A implements Printable,Addable //A类实现Printable和Addable接口
class Dog extends Animal implements Eatable,Sleepable
//Animal的Dog子类实现Eatable和Sleepable接口


如果一个非抽象类实现了某个接口,那么这个类必须重写这个接口中的所有方法。


注意:由于接口中的方法一定是public abstract方法,所以类在重写接口方法时不仅要去掉abstract修饰符,还要给出方法体,而且方法的访问权限一定要明显地用public来修饰。


如果实现接口的非抽象类实现了该接口中的方法,就相当于给出了方法的具体行为功能。用户也可以自定义接口,一个Java源文件可以由类和接口组成。


如果一个类声明实现一个接口,但没有重写接口中的所有方法,那么这个类必须是抽象类,也就是说,抽象类既可以重写接口中的方法,也可以直接拥有接口中的方法。


细节说明:

程序可以用接口名访问接口中的常量,但是如果一个类实现了接口,那么该类可以直接在类体中使用该接口中的常量。


定义接口时,如果关键字interface前面加上public关键字,就称作public接口,public接口可以被任何一个类实现;如果不加上public关键字,就称作友好接口,友好接口可以被与该接口在同一包中的类实现。


如果父类实现了某个接口,那么子类也就自然而然地实现了该接口,也就是说,子类不必再使用关键字implements声明实现这个接口。


接口也是可以被继承的,即可以通过关键字extends声明一个接口是另一个接口的子接口。由于接口中的方法和常量都是共有的,所以子接口将继承父接口中的全部方法和常量。


注意:Java提供的接口都在相应的包中,通过import语句不仅可以引入包中的类,也可以引入包中的接口。


例如:

import java.io.*;
//此时不仅引入了java.io包中的类,还引入了该包中的接口



本文固定URL:https://www.dotcpp.com/course/787

上一课:

Java接口

下一课:

Java接口回调

Java教程
第一章 Java入门
第二章 Java运算符和表达式
第三章 Java流程控制
第四章 Java类和对象
第五章 Java子类与继承
第六章 Java接口与实现
第七章 Java内部类与异常类
第八章 Java常用实用类
第九章 Java输入输出流
第十章 Java数组
Dotcpp在线编译      (登录可减少运行等待时间)