第二阶段 – 面向对象编程(2-3个月)
类、对象、属性和方法
- 类结构
- 对象实例化
- 使用 this
- 最佳实践:命名、代码组织
封装、继承、多态和抽象
- Encapsulation:private, getters/setters, 验证
- Inheritance:extends, overriding (@Override)
- Polymorphism:子类型, method overloading
- Abstraction:概述,准备使用接口和抽象类
接口和抽象类
- Interfaces:implements, default methods
- Abstract classes:抽象方法和具体方法
- 接口与抽象类的区别
构造函数、初始化器和静态块
- 默认构造函数和参数化构造函数,使用 this() 调用
- 初始化块 ({}) 和静态块 (static {})
枚举
基本集合
- ArrayList:添加、删除、迭代(for, forEach, Iterator)
- HashMap:键值对,常见操作
- HashSet:消除重复
- 队列和堆栈介绍(例如,LinkedList 作为 queue/stack)
- Java Collections Framework 介绍
基本算法
- 线性搜索和二分搜索
- Sorting:Bubble Sort, Collections.sort()
- Recursion:概念和简单示例(例如,阶乘、斐波那契)
- 复杂度介绍(O(n), O(log n))
泛型
- 语法 (),泛型集合,泛型方法
- 边界(extends, super)
Stream API(介绍)
- 基本操作:filter, map, collect
- 使用 ArrayList 的示例
单元测试(介绍)
- JUnit 的基本使用
- 为类和方法编写测试用例
- TDD(Test-Driven Development)介绍
最终项目
- 图书馆系统
- 类:Book, User, Library
- 继承:DigitalBook 和 PhysicalBook
- 集合:ArrayList 用于书籍,HashMap 用于借阅
- 封装:数据验证
- Git:按功能提交(例如,
feature/book-management
)
- 在 GitHub 上发布,附带说明性 README
更新资源