> 技术文档 > JavaSE全套基础知识详解(万字长文)

JavaSE全套基础知识详解(万字长文)


JavaSE全套基础知识详解(万字长文)

JavaSE 是 Java 学习之路的地基,掌握它意味着你具备了开发 Java 应用、Web 项目、Spring 框架的基本能力。本文将全面系统地讲解 JavaSE 的核心知识点,带你从零构建 Java 编程思维。


✅ 一、Java 简介

  • 语言特点

    • 面向对象(OOP)
    • 跨平台(一次编译,处处运行)
    • 安全性高(有 JVM 沙箱机制)
    • 丰富的类库(JDK 提供了大量 API)
  • Java 运行机制

    1. 编写 .java 文件
    2. 使用 javac 编译生成 .class 字节码
    3. JVM 加载 .class 文件并运行

✅ 二、Java 基础语法

1. 基本数据类型

类型 关键字 占用字节 示例 整型 int 4 42 浮点 float/double 4/8 3.14 字符 char 2(UTF-16) ‘A’ 布尔 boolean 1(逻辑) true

2. 变量与常量

int age = 25;final double PI = 3.14159;
  • final 修饰常量,表示不可更改

3. 运算符

  • 算术运算:+ - * / %
  • 比较运算:== != > = <=
  • 逻辑运算:&& || !
int a = 10, b = 3;System.out.println(a / b); // 3System.out.println(a % b); // 1System.out.println(++a); // 11

✅ 三、流程控制语句

1. 分支语句

if (score >= 90) { System.out.println(\"优秀\");} else if (score >= 60) { System.out.println(\"及格\");} else { System.out.println(\"不及格\");}

2. switch语句

switch (day) { case 1 -> System.out.println(\"Monday\"); case 2 -> System.out.println(\"Tuesday\"); default -> System.out.println(\"Unknown\");}

3. 循环语句

for (int i = 0; i < 5; i++) { ... }while (x > 0) { ... }do { ... } while (x > 0);
  • break:跳出当前循环
  • continue:跳过当前迭代

✅ 四、方法与参数

1. 方法定义

public static int add(int a, int b) { return a + b;}
  • static 表示静态方法
  • 可变参数:void print(String... args)

2. 方法重载(Overload)

void say() {}void say(String name) {}

✅ 五、面向对象编程(OOP)

1. 类与对象

class Car { String brand; void drive() { System.out.println(brand + \" is running...\"); }}Car c = new Car();c.brand = \"BMW\";c.drive();

2. 封装

  • private 修饰属性 + getter/setter

3. 继承

class Animal { void eat() {} }class Dog extends Animal { void bark() {} }

4. 多态

Animal a = new Dog(); // 向上转型a.eat();  // 编译时看父类,运行时看子类(动态绑定)

5. 抽象类 & 接口

abstract class Shape { abstract double area();}interface Flyable { void fly();}

✅ 六、数组与集合

1. 数组

int[] arr = {1, 2, 3};for (int i : arr) { System.out.println(i);}

2. 集合框架(Collection)

类型 说明 List 有序、可重复 Set 无序、不可重复 Map 键值对结构
List<String> list = new ArrayList<>();Set<String> set = new HashSet<>();Map<String, Integer> map = new HashMap<>();

3. 遍历集合

for (String s : list) { ... }list.forEach(System.out::println);

✅ 七、异常处理机制

1. 异常体系

类型 示例 编译时异常 IOException, SQLException 运行时异常 NullPointerException

2. try-catch-finally

try { int x = 1 / 0;} catch (ArithmeticException e) { e.printStackTrace();} finally { System.out.println(\"释放资源\");}

✅ 八、输入与输出(IO)

1. 字节流与字符流

FileInputStream fis = new FileInputStream(\"a.txt\");FileReader fr = new FileReader(\"a.txt\");BufferedReader br = new BufferedReader(fr);

2. 序列化与反序列化

ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(\"obj.ser\"));oos.writeObject(myObject);

类需实现 Serializable 接口


✅ 九、多线程编程

1. 创建线程的三种方式

// 继承 Threadclass MyThread extends Thread { public void run() { System.out.println(\"子线程\"); }}// 实现 RunnableRunnable r = () -> System.out.println(\"Lambda Thread\");new Thread(r).start();// 使用线程池ExecutorService es = Executors.newFixedThreadPool(2);es.execute(() -> System.out.println(\"线程池中的线程\"));

2. 同步关键字

synchronized (this) { // 临界区}

✅ 十、网络编程(Socket)

// 服务端ServerSocket server = new ServerSocket(8888);Socket client = server.accept();BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
// 客户端Socket socket = new Socket(\"localhost\", 8888);PrintWriter pw = new PrintWriter(socket.getOutputStream(), true);pw.println(\"Hello Server!\");

✅ 十一、反射机制

Class<?> cls = Class.forName(\"com.example.Person\");Object obj = cls.getDeclaredConstructor().newInstance();Method method = cls.getMethod(\"sayHello\");method.invoke(obj);

✅ 十二、常用API详解

  • java.lang:基础类(String、Object、Math、System)
  • java.util:集合、工具类、时间处理
  • java.io:输入输出
  • java.net:网络
  • java.nio:高性能 IO
  • java.time:Java 8 日期时间 API

✅ 十三、Java 关键特性

特性 说明 自动垃圾回收 JVM 自动释放无用内存 类加载机制 延迟加载、双亲委派模型 平台无关性 JVM 使 Java 能跨平台运行 泛型 提高代码复用、增强类型安全 Lambda 表达式 简化函数式编程(Java 8 引入)

✅ 十四、学习建议与实践路线

学习路线建议:

  1. 掌握语法 + 面向对象思想
  2. 熟练掌握集合 + IO + 异常 + 多线程
  3. 完成小项目(如:图书管理系统、学生管理系统)
  4. 阅读官方文档和 JDK 源码(如:ArrayList)
  5. 学习进阶框架(Spring Boot、MyBatis)

✅ 十五、经典练习题推荐

  1. 打印九九乘法表
  2. 模拟学生成绩管理系统
  3. 编写图书馆借阅系统
  4. 编写 TCP 聊天程序
  5. 文件批量复制、合并等

✅ 结语

JavaSE 是一切 Java 技术的基石,掌握它不仅能让你写出稳健、高效的代码,也能在求职、面试中脱颖而出。希望这篇博客能成为你 Java 学习道路上的一块垫脚石!


如需源代码示例、配套PDF笔记或后续进阶框架学习路线(Spring、MyBatis、JavaWeb),欢迎评论/私信获取!