Java 核心概念详解

Java 是面向对象、跨平台、强类型 的编程语言,核心概念分为 基础核心、面向对象、高级核心、工程核心 四大模块,是学习 Java 必须掌握的骨架。

一、基础核心(入门必学)

1. JVM / JRE / JDK 三兄弟

这是 Java 能运行的根基:

  • JVM(Java 虚拟机):Java 跨平台的核心,负责把字节码翻译成机器能执行的指令
  • JRE(Java 运行环境) = JVM + 核心类库 → 只能运行 Java 程序
  • JDK(Java 开发工具包) = JRE + 编译器 (javac) + 开发工具 → 既能开发又能运行

2. 跨平台(一次编写,到处运行)

Java 源码 .java → 编译成 字节码 .class → JVM 翻译执行Windows、Linux、Mac 只要装了对应 JVM,就能运行同一份字节码,无需修改代码。

3. 数据类型

Java 是强类型语言,变量必须先定义类型再使用:

  • 基本数据类型(8 种)byte/short/int/long/float/double/char/boolean(存值,效率高)
  • 引用数据类型:类、接口、数组、字符串(存地址,指向对象)

4. 变量、常量、作用域

  • 变量:存储数据的容器
  • 常量:final 修饰,值不可修改
  • 作用域:局部变量(方法内)、成员变量(类内)、静态变量(类全局)

5. 方法(函数)

封装一段可重复执行的代码,格式:

java 复制代码
修饰符 返回值类型 方法名(参数列表) { 方法体 }

二、面向对象 OOP(Java 灵魂)

Java 是纯面向对象语言,一切皆对象(除基本类型外)。

1. 类与对象

  • :对象的模板(抽象),比如 Person
  • 对象 :类的实例(具体),比如 new Person()
java 复制代码
// 类
class Person {
    String name; // 属性
    void sleep(){} // 行为
}
// 对象
Person p = new Person();

2. 四大核心特性

  1. 封装 :把属性私有化,提供公共方法访问(保护数据安全)

    java 复制代码
    private int age; // 私有
    public int getAge(){ return age; } // 公开访问
  2. 继承 :子类复用父类代码,用 extends 关键字(单继承)

  3. 多态:同一行为,不同对象表现不同(父类引用指向子类对象)

  4. 抽象 :用 abstract 定义抽象类 / 接口,只定义规范,不实现逻辑

3. 接口(Interface)

特殊的抽象类型,只定义规则,不实现功能 ,类用 implements 实现接口,支持多实现。

4. 重写 vs 重载

  • 重载(Overload):同一个类,方法名相同,参数列表不同
  • 重写(Override):子类重写父类方法,方法签名完全一致

5. 修饰符

控制访问权限:

  • public:全局可访问
  • protected:同包 + 子类可访问
  • default(无修饰符):同包可访问
  • private:仅当前类可访问

三、核心高级概念(进阶必备)

1. 异常处理

程序出错时的容错机制:

  • Error:JVM 系统错误(无法处理)
  • Exception :程序异常(可捕获处理)关键字:try-catch-finally-throws-throw

2. 集合框架(Collections)

替代数组,存储对象的工具:

  • List:有序可重复(ArrayList、LinkedList)
  • Set:无序不可重复(HashSet、TreeSet)
  • Map:键值对存储(HashMap、TreeMap)

3. 多线程

同时执行多个任务:

  • 实现方式:Thread 类、Runnable 接口
  • 核心:线程安全、同步锁 synchronized、线程池

4. IO 流

读写文件 / 网络数据:

  • 字节流:InputStream/OutputStream(所有文件)
  • 字符流:Reader/Writer(纯文本)

5. 反射(Reflection)

运行时获取类的信息、调用方法、操作属性,是框架底层核心。

6. 注解(Annotation)

@Override@Test 等,给代码添加标记,框架用它实现自动配置。


四、工程 / 开发核心概念

  1. **垃圾回收(GC)**JVM 自动回收无用对象内存,无需手动释放,避免内存泄漏。

  2. 泛型(Generic) <T> 限定集合 / 类的数据类型,编译时检查类型安全。

  3. Lambda 表达式简化函数式接口代码,Java 8+ 核心特性。

  4. Maven/Gradle项目构建、依赖管理工具(管理 jar 包)。

  5. 设计模式通用代码解决方案:单例、工厂、代理、策略等。


总结

  1. 根基:JVM/JRE/JDK + 跨平台 + 基本语法
  2. 灵魂:面向对象(类、对象、封装、继承、多态、接口)
  3. 进阶:异常、集合、多线程、IO、反射
  4. 工程:GC、泛型、构建工具、设计模式

掌握这些概念,你就吃透了 Java 的核心骨架,后续学习框架、项目开发都会非常顺畅。

相关推荐
云烟成雨TD1 天前
Spring AI Alibaba 1.x 系列【22】Agent 并行工具执行与超时 / 协作式取消实战
java·人工智能·spring
雾岛听蓝1 天前
Qt操作指南:窗口组成与菜单栏
开发语言·经验分享·笔记·qt
段小二1 天前
服务一重启全丢了——Spring AI Alibaba Agent 三层持久化完整方案
java·后端
段小二1 天前
Agent 自动把机票改错了,推理完全正确——这才是真正的风险
java·后端
zopple1 天前
Laravel vs ThinkPHP:PHP框架终极对决
开发语言·php·laravel
itjinyin1 天前
ShardingSphere-jdbc 5.5.0 + spring boot 基础配置 - 实战篇
java·spring boot·后端
松☆1 天前
C++ 算法竞赛题解:P13569 [CCPC 2024 重庆站] osu!mania —— 浮点数精度陷阱与 `eps` 的深度解析
开发语言·c++·算法
耿雨飞1 天前
Python 后端开发技术博客专栏 | 第 06 篇 描述符与属性管理 -- 理解 Python 属性访问的底层机制
开发语言·python
丶小鱼丶1 天前
Java虚拟机【JVM】
java·jvm
耿雨飞1 天前
Python 后端开发技术博客专栏 | 第 08 篇 上下文管理器与类型系统 -- 资源管理与代码健壮性
开发语言·python