이번 연재의 목표: 자료형과 문장에서 시작해 클래스, 상속, abstract, implements까지 한 도서관 예제로 연결합니다.

자바를 처음 배우면 설치 화면, 통합 개발 환경, 프레임워크가 한꺼번에 나타납니다. 이 연재는 출발점을 하나로 정합니다. JDK와 텍스트 편집기만 두고, 작은 파일을 직접 컴파일해서 실행합니다.

도착점은 문법 용어를 많이 외우는 일이 아닙니다. 종이책과 전자책의 연체료를 다르게 계산하고, 공통 규칙은 abstract로, 예약 같은 역할은 interface와 implements로 나누는 일입니다.

목차

01 — 설치와 첫 실행 JDK를 확인하고 main이 있는 첫 클래스를 실행합니다.

02 — 변수와 자료형 기본형과 String을 구분하고 값에 이름을 붙입니다.

03 — 연산 정수 나눗셈, 나머지, 비교와 논리 연산으로 연체료를 계산합니다.

04 — 입력과 출력 Scanner로 문자열과 숫자를 읽고 println으로 결과를 보여 줍니다.

05 — 조건문 if와 switch로 연체 여부와 회원 등급을 가릅니다.

06 — 반복문 for와 while로 여러 권의 합계를 구합니다.

07 — 배열 고정된 개수의 제목과 연체 일수를 담고 순회합니다.

08 — 문자열 제목을 자르고 비교합니다. 문자열은 한 번 만들면 바뀌지 않습니다.

09 — 메서드 반복되는 계산에 이름을 붙이고 값을 돌려받습니다.

10 — 클래스와 객체 책 한 권의 자료와 동작을 한 틀에 모읍니다.

11 — 생성자와 접근 객체가 만들어질 때 값을 검사하고 필드를 숨깁니다.

12 — 상속 extends와 super로 전자책이 종이책의 규칙을 물려받게 합니다.

13 — 재정의와 다형성 @Override로 연체료를 바꾸고, 부모 타입으로 자식 객체를 다룹니다.

14 — 추상 클래스 abstract로 혼자서는 만들지 않는 공통 틀을 정의합니다.

15 — 인터페이스와 implements 예약처럼 부모 자식이 아닌 역할은 interface로 구현합니다.

학습 방법

한 편을 읽고 코드를 파일로 저장한 뒤 컴파일하고 실행합니다. 마지막 연습은 해설을 보기 전에 직접 작성합니다. 막히면 바로 이전 편의 예제로 돌아갑니다.

이 연재는 JDK 17을 기준으로 합니다. 예제의 공통 문법은 Java 11 이상에서 동작합니다. 스트림, 제네릭 심화, 람다, 동시성은 범위 밖에 둡니다.