Java시작과 문법

package, import, main 클래스

Java 프로그램의 기본 단위인 package, import, 클래스 파일 구조, `main` 메서드 의미를 정리합니다.

마지막 수정 2026년 3월 22일

기본 패턴

java
package com.example.app;

import java.util.List;

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello, Java");
    }
}

설명

  • Java 소스 파일은 보통 package 선언, import, 클래스 선언 순서로 읽습니다. package는 이름공간과 접근 경계를 만들고, import는 다른 패키지의 타입을 간단한 이름으로 쓰게 도와줍니다.
  • public static void main(String[] args)는 전통적인 Java 애플리케이션의 시작점입니다. java 런처가 이 메서드를 찾아 프로그램 실행을 시작합니다.
  • package는 단순 폴더 이름이 아니라 논리적 모듈 경계입니다. 타입 충돌을 줄이고, 어떤 클래스가 같은 영역에 속하는지를 드러내는 역할도 합니다.
  • import는 코드를 짧게 만들지만, 어떤 타입이 어디서 왔는지 숨기기도 합니다. 같은 이름의 타입이 여럿 있을 때는 완전 수식 이름을 쓰는 편이 오히려 더 명확할 수 있습니다.
  • Java를 처음 배울 때는 main 문법이 길어 보여도, 실제로는 "실행 가능한 클래스의 진입점"이라는 역할만 이해하면 됩니다.

빠른 정리

요소역할
package이름공간과 경계 설정
import다른 패키지 타입을 짧게 참조
클래스Java 코드의 기본 구조 단위
main 메서드애플리케이션 시작점
파일 구조package와 디렉터리 구조를 맞추는 편이 일반적

주의할 점

package 경계와 폴더 구조를 아무렇게나 두면 나중에 import와 빌드 경로가 금방 헷갈립니다. 작은 예제라도 package 이름을 의식하고 시작하는 편이 좋습니다.

참고 링크

3 sources