news 2026/6/18 13:56:12

Java新手速成教程:接口 + 内部类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java新手速成教程:接口 + 内部类

一、什么是接口(interface)

1. 核心定义

- 关键字:interface
- 接口是「纯粹的规则/标准」,只定义功能,不做具体实现。
- 类比:接口是说明书,类是真正造出来的产品。

2. 接口的最大特点

1. 接口多继承:一个接口可以同时继承多个接口
2. 类多实现:一个类可以同时实现多个接口
3. 接口中:- 变量默认: public static final (常量,不能改)
- JDK8开始:可以有抽象方法、默认方法、静态方法
- JDK9开始:可以有私有方法

重点:接口不一定有抽象方法(空接口也合法)

二、接口的 5 个必考规则

规则1:接口不强制有抽象方法

Java8/9新增各种非抽象方法,接口可以没有抽象方法。
→ 考题:「接口中必须定义抽象方法」❌ 错

规则2:抽象类可以实现接口

抽象类实现接口时,可以不重写全部方法,剩下的交给它的子类实现。
→ 考题:「接口的实现类可以定义为抽象类」✅ 对

规则3:接口多继承、类多实现

- 接口 extends 多个父接口
- 类 implements 多个接口
→ 考题:「接口之间多继承、类对接口多实现」✅ 对

规则4:接口属性是常量,抽象类属性可修改

- 接口所有变量默认被 final 修饰 不可修改
- 抽象类普通变量可以随意修改
→ 考题:「接口属性不可改,抽象类属性可以改」✅ 对

规则5:不是所有接口都能用Lambda

Lambda 只支持 函数式接口(只有1个抽象方法的接口)
有 ≥2 个抽象方法的接口,不能用Lambda
→ 考题:「所有接口都可以用Lambda实现」❌ 错

三、接口基础代码示例

1. 定义接口
public interface USB {

// 常量(默认 public static final)

String NAME = "USB设备";

// 抽象方法(无实现)

void work();

// JDK8 默认方法(有实现)

default void show() {

System.out.println("这是默认方法");

}

}




2. 类实现接口
public class Mouse implements USB{

@Override

public void work() {

System.out.println("鼠标工作");

}

}




3. 多实现(重点考点)

// 一个类实现多个接口

public class Phone implements USB, Bluetooth{

}



4. 接口多继承
// 一个接口继承多个接口

public interface A extends B,C{

}




四、内部类

1. 什么是内部类

定义在类里面的类,叫内部类。

2. 考试必考三种内部类

1. 局部内部类(方法内部类)- 定义在方法里面
- 作用范围只在当前方法
2. 匿名内部类- 没有类名
- 可以继承普通类 / 抽象类 / 实现接口

考题:「匿名内部类既可以基于接口,也可以基于父类」✅ 对
3. 成员内部类、静态内部类

五、匿名内部类最简示例

不用单独写一个实现类,直接new接口并重写方法:
USB u = new USB() {

@Override

public void work() {

System.out.println("匿名内部类实现接口");

}

};




六、所有填空考点终极总结(直接背)

1. 定义接口关键字:interface
2. 接口与接口之间:多继承
3. 类与接口之间:多实现
4. 定义在方法里的内部类:局部内部类(方法内部类)
5. Lambda只能用在:函数式接口(单个抽象方法)

七、新手终极记忆口诀

- 接口是标准,多继承、多实现
- 接口变量全是常量
- 接口方法8有默认、9有私有
- 抽象类实现接口可不全重写
- Lambda 只能单抽象方法
- 匿名内部类 接口、父类都能用

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

Windows系统文件shdocvw.dll丢失找不到问题解决

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/6/18 13:47:55

读懂人性,方能从容处世——《人性的弱点》读后感

读懂人性,方能从容处世——《人性的弱点》深度读后感市面上成功学书籍浩如烟海,大多随着时代迭代快速被淘汰,唯有戴尔卡耐基的《人性的弱点》跨越近百年时光,依旧是人际相处、自我修行的必读经典。很多人初次翻阅,误以…

作者头像 李华
网站建设 2026/6/18 13:47:30

Gemma 4手机端实测:开源大模型如何真正落地终端

1. 项目概述:当Gemini技术基座真正落进你掌心——Gemma 4在手机端的实测落地不是概念,是今天就能摸到的生产力你有没有过这种体验:刷到一篇讲“下一代AI”的文章,满屏都是参数、架构、benchmark曲线,最后发现——它还在…

作者头像 李华
网站建设 2026/6/18 13:41:04

AI编程工具vibe coding体验对比

用 Claude Code 做 vibe coding 半年,又用 TRAE SOLO 做了两个月,最大的感受:终端式迭代和 IDE 式迭代是两种完全不同的编程体验。作为字节跳动出品的AI原生IDE,TRAE的代码生成准确率达98%(官方公开数据)&a…

作者头像 李华
网站建设 2026/6/18 13:39:29

嵌入式GUI开发:深入理解emWin窗口管理器与消息驱动机制

1. 嵌入式GUI开发中的窗口管理器:为什么需要它?在嵌入式系统里做图形界面,最头疼的往往不是画一个按钮或者显示一段文字,而是当屏幕上同时有多个元素需要交互和更新时,如何让它们“和平共处”。你可能会遇到这样的场景…

作者头像 李华