su-tudy 님의 블로그
01 자바 언어의 구성 본문
🎯 자바를 배우는 이유
자바는 전 세계에서 가장 널리 쓰이는 언어 중 하나고, 객체지향의 개념을 익히기에 가장 적합한 언어다.
이 시리즈는 자바의 기초 문법부터 객체지향, 컬렉션까지 총 29개 주제를 순서대로 정리한 학습 기록이다.
💡 핵심 개념 정리
▸ 자바란?
자바는 객체지향 언어다. 객체지향이란 현실 세계의 사물을 프로그램으로 옮기는 방식으로 사고하는 것이다. 냉장고, 사람, 자동차처럼 고유한 속성과 기능을 가진 존재를 프로그램 안에서 객체로 표현한다.
▸자바의 주요 특징
| 특징 | 설명 |
| 플랫폼 독립성 | JVM 덕분에 Windows, Mac, Linux 어디서든 동일하게 동작한다. |
| 객체지향 | 현실의 사물을 객체로 모델링해 코드를 작성한다. 재사용성과 유지보수성이 높아진다. |
| 자동 메모리 관리 | JVM의 가비지 컬렉터(GC)가 사용하지 않는 메모리를 자동으로 해제해준다. |
| 강한 타입 시스템 | 변수의 자료형을 반드시 선언해야 한다. 덕분에 컴파일 단계에서 타입 오류를 미리 잡아준다. |
▸ 자바 프로그램의 실행 흐름
자바는 컴파일 결과가 바로 OS에서 실행되지 않는다. JVM이라는 중간 단계를 거치기 때문에 OS에 상관없이 동일하게 동작할 수 있다.
.java 소스코드
→
컴파일러
→
.class 바이트코드
→
JVM
→
실행
| 단계 | 역할 |
| 컴파일러 | .java 파일을 JVM이 이해할 수 있는 바이트 코드(.class)로 번역 |
| 바이트코드 | 특정 OS에 종속되지 않는 중간 언어 |
| JVM | 바이트코드를 읽어 실제로 실행하는 가상 환경. 메모리 관리(GC)도 담당 |
▸ 자바 프로그램의 구조
자바 코드는 클래스 → 메서드 → 실행문 순서로 중첩된 구조를 가진다. 모든 코드는 반드시 클래스 안에 있어야 하고, 실행 코드는 메서드 안에 있어야 한다.
▸ 기본 프로그램 구조
public static void main(String[] args)는 자바 프로그램의 시작점이다. JVM은 항상 이 메서드를 가장 먼저 찾아 실행한다. 이 형태는 외워두는 것이 좋다.
public class Hello { // 클래스 (파일명과 반드시 동일)
public static void main(String[] args) { // 프로그램 시작점
String message = "Hello, Java!"; // 변수 선언
System.out.println(message); // 실행문 - 출력
}
}
▸ 주석 작성법
주석은 코드 실행에 영향을 주지 않는 설명이다. 나중에 코드를 다시 봤을 때 빠르게 파악하거나, 협업할 때 상대방이 이해하도록 돕기 위해 쓴다.
| 한 줄 주석 | // |
코드 옆 간단한 설명 |
| 범위 주석 | /* ... */ |
여러 줄 설명, 코드 임시 비활성화 |
| 문서 주석 | /** ... */ |
API 문서 자동 생성용 |
// 한 줄 주석 - 코드 옆에 간단히
/* 범위 주석
여러 줄 설명이 필요할 때 또는 코드를 임시로 끌 때 사용 */
/**
* 문서 주석 - 클래스나 메서드 위에 작성
* javadoc으로 API 문서를 자동 생성할 때 사용
*/
📌 헷갈리기 쉬운 포인트
🚨 주의 — 파일명과 클래스명은 반드시 같아야 한다.
대소문자까지 완전히 일치해야 한다. 조금이라도 다르면 컴파일 오류가 발생한다.
public class Hello {...} ✅ 정상
public class hello {...} ❌ 대소문자 다름 → 컴파일 오류
public class World {...} ❌ 파일명과 불일치 → 컴파일 오류
🚨 주의 — 자바는 대소문자를 구분한다.
Hello와 hello는 완전히 다른 이름으로 취급된다.
'Java > Part 1. 자바 기초' 카테고리의 다른 글
| 02 변수와 자료형 (0) | 2024.07.01 |
|---|