news 2026/4/17 19:57:16

java中接口类的知识点介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
java中接口类的知识点介绍

Java 接口知识点介绍

在 Java 中,接口(Interface) 是一种抽象类型,用于定义一组方法的规范(方法签名),不包含方法的具体实现(Java 8 及以后支持默认方法和静态方法的实现),核心作用是实现多态和解耦,同时解决 Java 单继承的局限。

一、接口的定义

使用 interface 关键字定义接口,语法格式如下:
[访问修饰符] interface 接口名 {
// 1. 常量:默认被 public static final 修饰
数据类型 常量名 = 常量值;

// 2. 抽象方法:默认被 public abstract 修饰(Java 7及以前)
返回值类型 方法名(参数列表);

// 3. 默认方法(Java 8+):用 default 修饰,可带方法体
default 返回值类型 方法名(参数列表) {
方法体;
}

// 4. 静态方法(Java 8+):用 static 修饰,可带方法体
static 返回值类型 方法名(参数列表) {
方法体;
}
}
示例:
public interface Flyable {
// 常量
int MAX_HEIGHT = 1000;

// 抽象方法
void fly();

// 默认方法
default void stop() {
System.out.println("停止飞行");
}

// 静态方法
static void showInfo() {
System.out.println("这是一个飞行接口");
}
}
二、接口的实现

类通过 implements 关键字实现接口,必须重写接口中所有的抽象方法;如果实现类是抽象类,则可以不重写。一个类可以实现多个接口,以此实现类似“多继承”的效果。

1. 单接口实现

语法:
public class 类名 implements 接口名 {
// 重写接口的抽象方法
@Override
public 返回值类型 方法名(参数列表) {
方法体;
}
}
示例:
public class Bird implements Flyable {
@Override
public void fly() {
System.out.println("小鸟扇动翅膀飞行");
}
}
2. 多接口实现

语法:
public class 类名 implements 接口1, 接口2, ... {
// 重写所有接口的抽象方法
}
示例:
// 定义第二个接口
public interface Swimmable {
void swim();
}

// 实现两个接口
public class Duck implements Flyable, Swimmable {
@Override
public void fly() {
System.out.println("鸭子低空飞行");
}

@Override
public void swim() {
System.out.println("鸭子在水里游泳");
}
}
三、接口的核心特性

1. 抽象性:接口本身是抽象的,不能实例化(不能用 new 创建对象),只能通过实现类的对象来调用方法。

2. 成员默认修饰符

◦ 成员变量:默认 public static final,必须显式赋值,且赋值后不可修改。

◦ 抽象方法:默认 public abstract,无需手动添加修饰符。

◦ 默认方法和静态方法:默认 public(静态方法不能被重写,默认方法可以被重写)。

3. 多实现:一个类可以实现多个接口,弥补了 Java 类单继承的不足。

4. 接口继承接口:接口可以通过 extends 关键字继承多个接口,实现接口的拓展。
public interface AnimalBehavior extends Flyable, Swimmable {
void run();
}
四、Java 8 接口新特性(默认方法、静态方法)

1. 默认方法

• 作用:为接口新增方法时,不强制所有实现类重写,避免破坏原有代码。

• 调用:可通过实现类对象直接调用,也可被实现类重写。
// 重写默认方法
public class Plane implements Flyable {
@Override
public void fly() {
System.out.println("飞机靠引擎飞行");
}

@Override
public void stop() {
System.out.println("飞机降落后滑行停止");
}
}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 3:52:51

PaddlePaddle开源框架实测:工业级模型库如何提升开发效率?

PaddlePaddle开源框架实测:工业级模型库如何提升开发效率? 在智能制造车间的一条流水线上,摄像头每秒捕捉数十张产品图像,系统需要实时识别标签内容、核对批次信息,并在发现异常时立即报警。传统做法依赖人工抽检或定制…

作者头像 李华
网站建设 2026/4/13 10:22:58

XHS-Downloader终极指南:三步完成小红书作品批量下载

XHS-Downloader终极指南:三步完成小红书作品批量下载 【免费下载链接】XHS-Downloader 免费;轻量;开源,基于 AIOHTTP 模块实现的小红书图文/视频作品采集工具 项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader …

作者头像 李华
网站建设 2026/4/16 18:09:18

qmcdump音频格式转换完整指南:轻松解锁QQ音乐加密文件

qmcdump音频格式转换完整指南:轻松解锁QQ音乐加密文件 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcdump 还在为…

作者头像 李华
网站建设 2026/4/5 9:51:29

树莓派4b引脚功能图认知入门:各引脚作用通俗解读

树莓派4B引脚图解入门:从零看懂每一个针脚是干什么的 你有没有过这样的经历?手握一块树莓派4B,想接个传感器、点亮一个LED,却在面对那排密密麻麻的40个金属针脚时瞬间懵圈——哪个是电源?哪个能输出信号?哪…

作者头像 李华
网站建设 2026/4/14 12:08:43

PotPlayer字幕翻译插件完整教程:3步实现多语言实时翻译

想要在PotPlayer播放器中享受实时字幕翻译的便利体验吗?这款基于百度翻译API的字幕翻译插件能够让你轻松观看多语言视频内容。无论是日语动漫、英语电影还是其他外语视频,只需简单配置即可实现字幕的智能翻译转换。这款PotPlayer字幕翻译插件完全免费使用…

作者头像 李华
网站建设 2026/4/17 8:42:38

小红书无水印下载终极指南:3分钟学会批量采集技巧

小红书无水印下载终极指南:3分钟学会批量采集技巧 【免费下载链接】XHS-Downloader 免费;轻量;开源,基于 AIOHTTP 模块实现的小红书图文/视频作品采集工具 项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader XH…

作者头像 李华