Keyword#
키워드들은 Java 언어의 기본 구성 요소이며, 각각이 특정한 프로그래밍 목적을 위해 설계되었다.
변수, 메서드, 클래스, 제어문 등 다양한 요소를 정의하고 제어하는 데 필수적인 역할을 한다.
이들을 올바르게 이해하고 사용하는 것이 효과적인 Java 프로그래밍의 기초가 된다.
각 키워드의 특징과 주의사항:
- 모든 키워드는 소문자로만 작성된다.
- 키워드는 식별자(변수명, 메서드명 등)로 사용할 수 없다.
- 일부 키워드는 특정 컨텍스트에서만 의미를 가진다.
- 예약어 중 일부는 현재 사용되지 않지만 향후 사용을 위해 예약되어 있다.
데이터 타입 키워드#
| 키워드 | 설명 | 예시 |
|---|
| byte | 8비트 정수형 (-128 ~ 127) | byte b = 100; |
| short | 16비트 정수형 (-32,768 ~ 32,767) | short s = 1000; |
| int | 32비트 정수형 | int i = 10000; |
| long | 64비트 정수형 | long l = 100000L; |
| float | 32비트 단정도 실수형 | float f = 3.14f; |
| double | 64비트 배정도 실수형 | double d = 3.14159; |
| boolean | 논리형 (true/false) | boolean flag = true; |
| char | 16비트 유니코드 문자 | char c = 'A'; |
| void | 반환값이 없음을 나타냄 | void method() {} |
제어문 키워드#
| 키워드 | 설명 | 예시 |
|---|
| if | 조건문 시작 | if (x > 0) {} |
| else | if문의 대안 경로 | else {} |
| switch | 다중 분기문 시작 | switch(value) {} |
| case | switch문의 각 경우 | case 1: |
| default | switch문의 기본 경우 | default: |
| for | 반복문 | for (int i = 0; i < n; i++) |
| while | 조건 기반 반복문 | while (condition) |
| do | do-while 반복문 시작 | do {} while(); |
| break | 반복문/switch문 탈출 | break; |
| continue | 현재 반복 건너뛰기 | continue; |
| return | 메소드에서 값 반환/종료 | return value; |
클래스 관련 키워드#
| 키워드 | 설명 | 예시 |
|---|
| class | 클래스 정의 | public class MyClass {} |
| interface | 인터페이스 정의 | interface MyInterface {} |
| extends | 클래스/인터페이스 상속 | class Child extends Parent {} |
| implements | 인터페이스 구현 | class MyClass implements Interface {} |
| enum | 열거형 정의 | enum Direction {NORTH, SOUTH} |
| this | 현재 인스턴스 참조 | this.value = value; |
| super | 상위 클래스 참조 | super.method(); |
| new | 객체 생성 | new Object(); |
| instanceof | 객체 타입 검사 | obj instanceof String |
접근 제어 키워드#
| 키워드 | 설명 | 예시 |
|---|
| public | 전체 접근 허용 | public class Public {} |
| private | 클래스 내부만 접근 가능 | private int value; |
| protected | 패키지와 자식 클래스 접근 가능 | protected void method() {} |
| default | 패키지 내부만 접근 가능 | int value; (키워드 생략) |
제어자 키워드#
| 키워드 | 설명 | 예시 |
|---|
| static | 클래스 레벨 멤버 정의 | static int count; |
| final | 변경 불가 선언 | final int MAX = 100; |
| abstract | 추상 클래스/메소드 선언 | abstract class Abstract {} |
| synchronized | 스레드 동기화 | synchronized void method() {} |
| volatile | 메모리 직접 접근 변수 | volatile boolean flag; |
| transient | 직렬화 제외 필드 | transient int temp; |
| native | 네이티브 메소드 선언 | native void method(); |
| strictfp | 엄격한 부동소수점 연산 | strictfp class Math {} |
예외 처리 키워드#
| 키워드 | 설명 | 예시 |
|---|
| try | 예외 발생 가능 블록 | try {} |
| catch | 예외 처리 블록 | catch (Exception e) {} |
| finally | 항상 실행되는 블록 | finally {} |
| throw | 예외 발생 | throw new Exception(); |
| throws | 예외 선언 | void method() throws Exception {} |
| assert | 조건 검증 | assert x > 0; |
패키지 관련 키워드#
| 키워드 | 설명 | 예시 |
|---|
| package | 패키지 선언 | package com.example; |
| import | 클래스 임포트 | import java.util.List; |
리터럴 키워드#
| 키워드 | 설명 | 예시 |
|---|
| true | 논리 참 값 | boolean t = true; |
| false | 논리 거짓 값 | boolean f = false; |
| null | 참조 없음 | Object obj = null; |
예약된 키워드 (미사용)#
| 키워드 | 설명 |
|---|
| const | 상수 (사용되지 않음) |
| goto | 이동 (사용되지 않음) |
참고 및 출처#