프로그래밍 언어/JAVA

JAVA) 자바 패키지(Package)

luana_eun 2022. 2. 27. 23:47
728x90

패키지 개념

패키지는 어려울 거 없다. 그냥 우리 컴퓨터에 있는 폴더와 같다. 

탐색기에서 본 패키지

탐색기로 자바 파일이 있는 폴더로 들어가보면

패키지가 폴더의 형태로 되어있다. 

 

 

 

같은 폴더안에 같은 이름의 파일이 올 수 없듯이, 한 패키지 안에 같은 이름의 자바 파일을 넣을 수 없다. 

 

클래스가 100개정도 된다고 했을때 이름을 중복되지 않게 만들기는 어렵다. 

중복된 이름이라도 패키지가 다르면 괜찮기에 분리하기 위해,

그리고 비슷한 기능끼리 묶어놓기 위해 패키지를 사용하다.  

 

 

 

패키지 형태

프로젝트 안에 아무 패키지도 만들지않으면 (default package)라고 이름이 붙여진다. 

패키지를 만들지 않았으니 Class 파일 상단에 패키지경로가 표지되지않지만

패키지를 만들면 파일 상단에 경로가 표시된다. 

=> 다른 패키지에 있는 클래스를 사용하려면 상단에 사용하길 원하는  패키지명을 적으면 된다는것을 알 수 있다. 

package 현재class파일이 속한 패키지 이름;

public 클래스명 {
    public static void main(String[] args) { }

패키지는 온점(.)으로 표기되며, 또한 클래스 이름은 대문자로 시작하는 걸 생각해보면

import한 문장에서도 대문자로 패키지와 클래스를 구분할 수 있다. 

// java.util 패키지 안의 모든 클래스들을 다 가져오겠다는 의미
import java.util.*;
// java.util 패키지 안의 ArrayList 클래스
import java.util.ArrayList;

패키지 이름은 주로 도메인명이나 소속된 그룹이름 으로 작성한다. 

도메인명은 전 세계적으로 겹치는 것이 없고, 쉽게 구별할 수 있기때문에 사용한다. 

 

 

만약 특정 패키지 안의 클래스를 import 없이 사용하고 싶으면 다음과 같이 쓰면된다. 

 원하는 클래스가 있는 패키지명.클래스명 객체명 = new 원하는 클래스가 있는 패키지명.클래스명();

public static void main(String[] args) {
		
	ex_package.TestClass t = new ex_package.TestClass();
		
}

 

 

 

 

 

 

 

 

 

728x90