news 2026/2/17 18:28:55

Java 基础知识总结(超详细整理)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java 基础知识总结(超详细整理)

下面是一份2026年视角下仍然非常实用Java SE 基础知识超详细总结(面向初学者到中级开发者),内容按逻辑顺序组织,重点突出常考、易错、高频使用的部分。

我会尽量用简洁 + 对比 + 记忆点 + 代码示例的方式呈现,便于快速复习和理解。

一、Java语言基础与环境

概念全称主要作用包含内容/备注
JDKJava Development Kit开发 + 运行包含JRE + 编译器javac + 工具(javadoc、jar等)
JREJava Runtime Environment只运行包含JVM + 核心类库
JVMJava Virtual Machine真正执行字节码的地方HotSpot(主流)、J9、GraalVM 等实现

Java跨平台原理一句话总结
程序员写.javajavac编译成平台无关的.class(字节码) → 不同平台的JVM把字节码解释/JIT编译成对应机器码执行。

2025–2026主流版本
企业主流:Java 8 / 11 / 17 / 21(LTS)
最推荐学习路径(2026):先精通 17/21 的新特性,再向下兼容 8 和 11

二、基本数据类型与包装类(8种)

类型字节默认值包装类缓存范围(==)常考点
byte10Byte-128 ~ 127
short20Short-128 ~ 127
int40Integer-128 ~ 127valueOf() 有缓存,new 没有
long80LLong-128 ~ 127后缀 L/l
float40.0fFloat后缀 F/f,精度丢失严重
double80.0Double默认浮点类型
char2Character0 ~ 127(ASCII)可存中文(Unicode)
boolean~falseBooleantrue/false(不是对象)不能用 1/0 赋值

经典面试题示例

Integera=100;// 自动装箱 → Integer.valueOf(100) → 缓存Integerb=100;System.out.println(a==b);// trueIntegerc=200;Integerd=200;System.out.println(c==d);// false (超过缓存范围)Integere=newInteger(100);System.out.println(a==e);// false (一个是缓存对象,一个是new出来的新对象)

三、运算符优先级(高到低,常见记忆口诀)

  1. ()[].
  2. !~++--(前置>后置)
  3. */%
  4. +-
  5. <<>>>>>
  6. <<=>>=instanceof
  7. ==!=
  8. &
  9. ^
  10. |
  11. &&
  12. ||
  13. ? :
  14. =+=-=等赋值

四、面向对象三大特性 + 三大修饰符对比

特性/关键字privatedefaultprotectedpublic记忆口诀
本类
同包דdefault是包访问”
子类××√(不同包也行)“protected护子类”
其他包××דpublic全世界”

三大特性对比表(常考)

特性核心思想实现方式面试最常问点
封装隐藏实现细节private + getter/setter为什么要有setter?(控制、校验、日志等)
继承代码复用extends(单继承)构造器不继承、final类不能被继承
多态同一接口不同实现方法重写+ 父类引用子对象向上转型、向下转型(instanceof + 强转)

五、常用关键字对比(超高频)

关键字作用范围是否可修饰类是否可修饰方法是否可修饰变量常考对比
final不可变√(不能继承)√(不能重写)√(常量)final、finally、finalize区别
static类级别×√(静态方法)√(静态变量)静态代码块 > 构造块 > 构造方法
abstract强制子类实现√(抽象类)√(抽象方法)×抽象类 vs 接口(Java 8后区别缩小)
interface规范(多实现)√(默认public)√(public static final)Java 8+ default/static方法

六、String / StringBuilder / StringBuffer(最常考)

是否可变线程安全性能底层实现使用场景
String不可变安全final char[]常量、key、配置文件
StringBuilder可变不安全最快char[] + count单线程大量拼接
StringBuffer可变安全较慢char[] + count多线程环境下的字符串拼接(少用)

经典写法对比(性能差距巨大)

// 差:创建了大量临时String对象Strings="";for(inti=0;i<10000;i++){s+=i;// 每次都new String}// 推荐:Java 5+ 几乎都用 StringBuilderStringBuildersb=newStringBuilder();for(inti=0;i<10000;i++){sb.append(i);}Stringresult=sb.toString();

七、集合框架对比(2026年仍最核心)

List(有序、可重复)

实现类底层结构随机访问插入/删除效率线程安全适用场景
ArrayList动态数组快 O(1)慢 O(n)查询多、尾插多
LinkedList双向链表慢 O(n)快 O(1)频繁头尾增删
Vector动态数组是(synchronized)古老遗留类(基本不用)

Set(无序、不可重复)

实现类底层是否有序是否允许null性能特点
HashSetHashMap无序允许1个null最快(O(1))
LinkedHashSetHashMap+链表插入顺序允许1个null略慢于HashSet,但有序
TreeSet红黑树自然/自定义排序不允许nulllog(n),自带排序

Map(键值对)

实现类底层是否有序key是否可nullvalue是否可null性能特点
HashMap数组+链表+红黑树无序允许1个null允许最常用,O(1)
LinkedHashMap数组+链表+红黑树+双向链表插入/访问顺序允许1个null允许维护插入/访问顺序
TreeMap红黑树key排序不允许null允许自带key排序,log(n)
Hashtable数组+链表无序不允许null不允许null古老、synchronized

八、异常体系(两张图就能记住)

Throwable(顶层) ├── Error(严重错误,程序员一般不处理) │ └── OutOfMemoryError / StackOverflowError ... └── Exception(可恢复) ├── RuntimeException(非受检,unchecked) │ ├── NullPointerException │ ├── ArrayIndexOutOfBoundsException │ ├── ClassCastException │ └── ... └── 其他(受检,checked,必须处理) ├── IOException ├── SQLException └── ...

推荐处理风格(2026主流)

// 1. 尽量用具体异常,不要直接catch Exceptiontry{// ...}catch(FileNotFoundExceptione){// 处理文件不存在}catch(IOExceptione){// 其他IO异常}// 2. Java 7+ 多catch写法}catch(FileNotFoundException|UnknownHostExceptione){// ...}

希望这份总结对你有帮助!如果想深入某个模块(比如JVM内存结构、类加载机制、泛型擦除、多线程基础、IO/NIO、反射、枚举、Lambda、Stream等),可以告诉我,我再给你展开更细的版本。加油~

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

Qwen2.5-0.5B部署后无法访问?HTTP服务配置详解

Qwen2.5-0.5B部署后无法访问&#xff1f;HTTP服务配置详解 1. 为什么启动了却打不开网页&#xff1f;常见误区先说清 你兴冲冲地拉取镜像、一键启动&#xff0c;终端显示 Server started on http://0.0.0.0:8000&#xff0c;可浏览器一输 http://localhost:8000 —— 却提示“…

作者头像 李华
网站建设 2026/2/13 21:19:34

如何用AI一键生成魔兽世界达拉然坐骑宏

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 请开发一个魔兽世界宏命令生成器&#xff0c;专门用于生成达拉然坐骑相关的宏。要求&#xff1a;1. 支持选择不同坐骑&#xff08;如魔法飞毯、达拉然炉石等&#xff09;&#xff…

作者头像 李华
网站建设 2026/2/15 7:24:55

AI助力NGINX配置:自动生成高效服务器设置

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个AI辅助工具&#xff0c;能够根据用户输入的服务器参数&#xff08;如流量预估、业务类型等&#xff09;&#xff0c;自动生成优化的NGINX配置文件。要求包含&#xff1a;1…

作者头像 李华
网站建设 2026/2/10 14:38:52

Vue2生命周期图解:小白也能懂的8个关键节点

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个图文并茂的Vue2生命周期学习页面&#xff0c;要求&#xff1a;1)用流程图展示完整的生命周期过程&#xff1b;2)为每个钩子函数提供简单的代码示例和解释&#xff1b;3)添…

作者头像 李华
网站建设 2026/2/14 13:20:21

汽车ECU开发实战:UDS 19服务在OTA升级中的应用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个演示UDS 19服务在OTA升级中应用的示例项目&#xff0c;要求&#xff1a;1. 模拟完整的OTA升级流程 2. 展示19服务在诊断会话控制中的作用 3. 实现从默认会话到编程会话的转…

作者头像 李华
网站建设 2026/2/12 2:06:59

告别课程论文 “凑数式” 写作!虎贲等考 AI 让作业秒变高分范本

每到期末周&#xff0c;课程论文就成了大学生的 “甜蜜负担”&#xff1a;选题太泛抓不住重点、文献堆砌毫无逻辑、语言口语化被打回重写…… 很多人把课程论文当成 “应付差事” 的作业&#xff0c;却忽略了它是夯实专业基础、锻炼学术思维的关键一步。虎贲等考 AI 的课程论文…

作者头像 李华