나 혼자 Java
첫 프로그램부터 객체지향·컬렉션·동시성·네트워크·함수형 프로그래밍과 JVM 진단까지 Java를 단계적으로 익힙니다.
Java를 처음 배우면 문법과 객체지향, JVM이라는 세 주제가 한꺼번에 등장해 서로의 관계를 놓치기 쉽습니다.
이 교재는 값을 계산하는 작은 프로그램에서 시작해 회원가입과 게시판 기능을 점진적으로 확장합니다.
앞 장에서 만든 클래스와 컬렉션을 뒤의 파일 저장, 네트워크, HTTP 서버에서 다시 사용하므로 순서대로 읽는 편이 좋습니다.
코드가 성공하는 경우뿐 아니라 컴파일 오류, 예외, 동시성 실패도 직접 재현해 원인을 찾습니다.
각 절을 마친 뒤에는 예제를 보지 않고 다시 작성하고, 입력 하나를 바꿨을 때 어떤 계층이 영향을 받는지 설명해 보세요.
학습 경로
1단계 · 문법과 객체에서는 값·제어문·메서드에서 시작해 클래스·캡슐화·상속·다형성을 익힙니다.
2단계 · Java 기본 도구에서는 Object·불변성·시간 API·예외·제네릭과 컬렉션을 다룹니다.
3단계 · 동시성과 입출력에서는 스레드·동기화·실행자·문자 인코딩·파일·TCP를 연결합니다.
4단계 · 웹과 메타프로그래밍에서는 HTTP 서버·리플렉션·애노테이션 실행기를 직접 만듭니다.
5단계 · 현대 Java에서는 람다·스트림·함수형 설계·Java 25 기능과 JVM 진단으로 확장합니다.
선택 심화 장은 기본 경로를 완주한 뒤 필요에 따라 학습합니다.
장별 목차
1장 Java 설치와 첫 프로그램
2장 값·식·분기·반복
3장 입력·배열·메서드
4장 클래스와 참조
5장 객체 책임과 캡슐화
6장 메모리·정적 멤버·상수
7장 상속·오버라이딩·다형성
8장 다형성과 객체지향 설계
9장 Object와 불변성
10장 래퍼·열거형·시간 API
11장 중첩 클래스와 내부 클래스
12장 예외 이론과 복구 실습
13장 제네릭·와일드카드·소거
14장 선형 자료구조 구현
15장 해시·HashSet·Set
16장 맵·스택·큐·덱
17장 순회·정렬·컬렉션 선택
18장 스레드 생성과 생명 주기
19장 가시성과 동기화
20장 생산자·소비자와 조건 대기
21장 원자 연산과 동시성 컬렉션
22장 실행자와 스레드 풀
23장 문자 인코딩과 스트림
24장 Path·Files와 파일 영속화
25장 TCP 네트워크
26장 채팅 프로토콜
27장 HTTP와 웹 서버
28장 리플렉션과 애노테이션
29장 애노테이션 HTTP 실행기
30장 람다와 함수형 인터페이스
31장 함수형 파이프라인
32장 스트림과 Collector
33장 Optional과 인터페이스 확장
34장 병렬 스트림과 Fork/Join
35장 함수형 프로그래밍
36장 Java 25 안정 기능
37장 Java 25 프리뷰 기능
38장 JVM 진단
기본 학습에서는 1장부터 36장까지 순서대로 진행하고, 프리뷰 기능과 JVM 진단은 필요할 때 선택합니다.
완주 기준은 문법 이름을 외우는 것이 아니라 값의 수명, 객체의 책임, 스레드 안전성과 실패 경계를 코드로 설명하는 것입니다.