1. 자바의 제어문 (흐름 제어)
반복문: 특정 코드를 여러 번 실행할 때
- for 루프 (기본형): 반복 횟수가 명확할 때 사용합니다.
구조: for (초기화; 조건식; 증감식) { 실행할 코드; }
- 초기화: 반복문에서 사용할 변수를 처음 설정합니다.
- 조건식: 이 조건이 true인 동안에만 코드가 실행됩니다.
- 증감식: 한 번 실행이 끝날 때마다 변수 값을 변화시킵니다.
- 향상된 for 루프 (for-each): 배열이나 컬렉션의 모든 요소를 하나씩 꺼낼 때 간결하게 사용합니다.
- 구조: for (타입 변수명 : 배열/컬렉션) { 실행할 코드; }
- while 루프: 조건이 참(true)인 동안 계속 반복합니다.
- 구조: while (조건식) { 실행할 코드; 증감식; }
- do-while 루프: 조건을 검사하기 전에 최소 한 번은 무조건 코드를 실행합니다.
- 구조: do { 실행할 코드; } while (조건식);
조건문: 상황에 따라 길을 나눌 때
- if-else 문: 조건의 참/거짓에 따라 실행할 블록을 결정합니다.
- 구조: if (조건) { ... } else if (다른 조건) { ... } else { ... }
- 삼항 연산자: 간단한 조건에 따른 값 할당 시 if문 대신 쓰기 좋습니다.
- 구조: (조건) ? 참일 때 값 : 거짓일 때 값;
2. 배열 (데이터 묶음 관리)
- 1차원 배열 생성: 같은 타입의 데이터를 일렬로 저장합니다.
- 구조: int[] arr = new int[크기]; 또는 int[] arr = {값1, 값2, ...};
- 2차원 배열: 행과 열로 구성된 표 형태의 데이터를 다룹니다.
- 구조: int[][] matrix = new int[행][열];
- 요소 접근: matrix[행인덱스][열인덱스] 형태로 접근하며, 인덱스는 0부터 시작합니다.
3. 클래스와 인터페이스 (객체 지향의 뼈대)
- 클래스(Class): 객체를 만들기 위한 설계도입니다.
- 구조: public class 클래스명 { 필드; 생성자; 메서드; }
- 상속(Inheritance): 부모의 기능을 자식이 물려받습니다.
- 구조: public class 자식클래스 extends 부모클래스 { ... }
- 인터페이스(Interface): 클래스가 반드시 구현해야 할 기능을 정의합니다.
- 구조: public interface 인터페이스명 { void 메서드명(); }
- 구현 시에는 implements 키워드를 사용하며, 다중 구현이 가능합니다.
4. 예외 처리 (에러 방지)
- try-catch-finally: 발생할 수 있는 에러를 미리 대비합니다.
- 구조: try { 예외 발생 가능 코드; } catch (예외타입 e) { 예외 처리 코드; } finally { 무조건 실행될 코드; } (자원 해제 등에 주로 사용 )
5. 알고리즘 기초: 입력받기
- Scanner 클래스: 다양한 타입의 입력을 처리합니다.
- 구조:Scanner sc = new Scanner(System.in);
- sc.nextInt(): 정수 입력
- sc.next(): 공백 전까지의 단어 입력
- sc.nextLine(): 한 줄 전체 입력
*자바 학습의 전체 구조와 현재 단계
| 구분 | 주요 내용 | 역할 및 비유 |
| 1단계: 기초 체력 (현재 정리 중) | 변수, 타입 변환, 제어문, 배열 |
코딩을 하기 위한 최소한의 생존 규칙입니다. 알고리즘 문제를 풀기 위한 기본 도구들. |
| 2단계: 설계의 원리 | 접근 제한자, 클래스, 인터페이스, 상속, 다형성 |
단순 코딩을 넘어 '프로그램'답게 만드는 설계 과정입니다. 객체지향의 핵심. |
| 3단계: 실무 필수 역량 | 예외 처리, 컬렉션, String 클래스 |
프로그램이 멈추지 않게 하고(예외), 데이터를 효율적으로 담는(컬렉션) 실무 스킬. |
| 4단계: 현대적 자바 | 제네릭, 람다, 스트림 |
코드를 훨씬 짧고 간결하게 만드는 고급 기술. |
| 부록: 동작 원리 | JVM 메모리 구조, 가비지 컬렉션(GC) |
자바가 컴퓨터 메모리를 어떻게 사용하는지 이해하는 깊이 있는 지식. |

'TECH' 카테고리의 다른 글
| 자바 알고리즘 기본 개념 익히기(7)-DFS & BFS (0) | 2026.05.18 |
|---|---|
| LG유레카 1주차 후기 (4.6~4.10) (0) | 2026.04.14 |