Java Basic
Java 基础由浅入深。
这不是零散知识点清单,而是一条学习路径:先知道 Java 是什么,再知道程序怎么跑,最后逐步掌握语法、类型、变量和方法。
How to Learn
每一阶段只解决一个问题。
7 阶段路线
先认识 Java 是什么
入门能用自己的话说出 Java 的核心特点,以及它为什么常用于后端和企业级系统。
检查点:我能不用背列表,讲出 3 个 Java 特点和对应的开发好处。
再理解程序怎么跑起来
理解能讲清楚 JDK、JRE、JVM 的包含关系,以及 Java 跨平台靠的是什么。
检查点:我能画出 JDK → JRE → JVM,并解释 .java → .class → JVM 的过程。
学习最小语法动作
入门能读懂一小段 Java 代码,并解释自增自减、移位、continue、break、return 的执行流程。
检查点:我能逐行推导 i++ / ++i 的结果,并能说出三种跳转语句分别跳到哪里。
理解数据怎么表示
应用能说出 8 种基本类型,并理解整数、浮点数、金额计算和大整数的边界。
检查点:我能解释为什么金额不用 double,以及什么时候考虑 BigDecimal / BigInteger。
进入包装类型和常见坑
易错能区分基本类型和包装类型,并能解释 Integer 缓存、自动装箱拆箱和比较方式。
检查点:我能判断 Integer 127 / 128 的 == 输出,并说明业务比较为什么用 equals。
理解数据放在哪里、活多久
理解能从声明位置、修饰符、生命周期和默认值解释成员变量、局部变量和静态变量。
检查点:我能解释为什么成员变量有默认值,而局部变量必须先赋值。
最后用方法组织行为并训练表达
表达能解释方法返回值、静态方法、实例方法、重载、重写和可变长参数。
检查点:我能用“重载看参数,重写看继承”展开讲出完整区别。
基础概念与常识
Java 语言特点、Java SE/EE/ME、Java 与 C++、Oracle JDK 与 OpenJDK。
本阶段目标
能用自己的话说出 Java 的核心特点,以及它为什么常用于后端和企业级系统。
通过标准:我能不用背列表,讲出 3 个 Java 特点和对应的开发好处。
本阶段补齐内容
- +Java 语言特点
- +Java SE vs Java EE vs Java ME
- +Java 和 C++ 的区别
- +Oracle JDK vs OpenJDK
JVM / JDK / JRE
JVM、JRE、JDK、字节码、JIT、AOT、编译与解释并存。
本阶段目标
能讲清楚 JDK、JRE、JVM 的包含关系,以及 Java 跨平台靠的是什么。
通过标准:我能画出 JDK → JRE → JVM,并解释 .java → .class → JVM 的过程。
基本语法
注释、标识符、关键字、自增自减、移位运算、continue/break/return。
本阶段目标
能读懂一小段 Java 代码,并解释自增自减、移位、continue、break、return 的执行流程。
通过标准:我能逐行推导 i++ / ++i 的结果,并能说出三种跳转语句分别跳到哪里。
本阶段补齐内容
- +Java 关键字分类
- +true/false/null 是字面值不是关键字
- +移位运算的使用场景和类型限制
基本数据类型
8 种基本类型、默认值、字节数、取值范围、浮点精度、BigDecimal、BigInteger。
本阶段目标
能说出 8 种基本类型,并理解整数、浮点数、金额计算和大整数的边界。
通过标准:我能解释为什么金额不用 double,以及什么时候考虑 BigDecimal / BigInteger。
本阶段补齐内容
- +基本类型默认值、字节数和取值范围
- +long/float 字面量注意事项
- +BigDecimal equals 与 compareTo 区别
- +BigInteger 溢出场景
包装类型与装箱拆箱
基本类型和包装类型的用途、存储、默认值、比较方式、缓存机制、装箱拆箱。
本阶段目标
能区分基本类型和包装类型,并能解释 Integer 缓存、自动装箱拆箱和比较方式。
通过标准:我能判断 Integer 127 / 128 的 == 输出,并说明业务比较为什么用 equals。
本阶段补齐内容
- +基本类型和包装类型的存储差异
- +Float/Double 没有缓存
- +IntegerCache 可调上限但不建议乱调
变量与常量
成员变量、局部变量、静态变量、字符型常量和字符串常量。
本阶段目标
能从声明位置、修饰符、生命周期和默认值解释成员变量、局部变量和静态变量。
通过标准:我能解释为什么成员变量有默认值,而局部变量必须先赋值。
本阶段补齐内容
- +成员变量和局部变量的语法、存储、生命周期、默认值完整对比
- +为什么成员变量有默认值
- +静态变量作用
- +字符型常量和字符串常量区别
方法
返回值、参数、静态方法、实例方法、重载、重写和可变长参数。
本阶段目标
能解释方法返回值、静态方法、实例方法、重载、重写和可变长参数。
通过标准:我能用“重载看参数,重写看继承”展开讲出完整区别。
本阶段补齐内容
- +方法返回值和四种方法类型
- +静态方法为什么不能调用非静态成员
- +静态方法和实例方法完整区别
- +可变长参数规则和固定参数优先级
按阶段进入表达型练习。
每一组练习只服务当前阶段的目标,避免知识点混在一起造成负担。