검색 엔진에 최적화된 제목". So the SEO title should be in Korean, up to
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

JAVA | [기본] IntelliJ 프로젝트 구조 & 패키지 이해하기

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

Java 초보 개발자, IntelliJ 사용자

핵심 요약

  • 패키지(package)src/ 디렉토리 내 폴더 구조와 1:1 매핑되어 네임스페이스를 구성
  • public 클래스는 파일명과 동일해야 하며, package 키워드로 패키지 선언 (예: package com.example.utils;)
  • 접근 제어자(public, default, protected, private)는 클래스/메서드/필드의 접근 범위를 결정

섹션별 세부 요약

1. 패키지의 개념

  • src/ 폴더 내 폴더는 패키지로 간주되며, 물리적 폴더와 논리적 네임스페이스가 동일
  • 중첩된 폴더(com/example/utils)는 하위 패키지(com.example.utils)로 정의 가능
  • 클래스는 패키지 단위로 그룹화되어 관리

2. 패키지 선언 규칙

  • .java 파일 최상단에 package 키워드로 패키지 명시 (예: package com.example.utils;)
  • 파일 경로와 패키지 명은 일치해야 함 (예: src/com/example/utils/Helper.java)
  • 한 파일에 public 클래스는 하나만 허용 (파일명 = 클래스명.java)

3. 클래스 구조 예시

  • 기본 구조:

```java

package com.example; // 패키지 선언

import java.util.List; // 외부 클래스 임포트

public class MyClass { // public 클래스는 파일명과 동일해야 함

private int value;

public MyClass(int value) { ... } // 생성자

public void doSomething() { ... } // 메서드

public static void main(String[] args) { ... } // 실행 진입점

}

```

4. 접근 제어자 설명

  • public : 모든 클래스 접근 가능
  • default (기본값) : 동일 패키지 내부만 접근 가능
  • protected : 동일 패키지 + 자식 클래스 접근 가능
  • private : 동일 클래스 내부만 접근 가능

5. import 문 사용 예시

  • 동일 패키지 외부 클래스 사용 시 반드시 import

```java

import com.example.model.User; // com.example.model 패키지의 User 클래스

import util.StringUtils; // util 패키지의 StringUtils 클래스

```

결론

  • 패키지 구조는 src/ 폴더 내 폴더와 1:1 매핑하여 정의하고, package 키워드로 명시
  • public 클래스는 파일명과 동일하게 작성하며, 접근 제어자로 코드의 접근 범위를 엄격히 제어
  • 다른 패키지의 클래스를 사용할 경우 import 문 필수 (예: import com.example.model.User;)