패키지란?

특정한 목적을 공유하는 클래스와 인터페이스의 묶음
패키지는 클래스들을 그룹 단위로 묶어 효과적으로 관리하기 위한 목적이 있음
자바에서 패키지는 하나의 디렉토리이다. 하나의 패키지에 속한 클래스나 인터페이스 파일은 모두 해당 패키지에 속해있다.
이 디렉토리는 하나의 계층구조를 가지고 있고, 계층간의 구분은 . 으로 표현한다
패키지가 있는경우엔 소스 코드의 첫줄에 반드시 패키지명이 표시되어야함
패지키지가 없을 경우엔 이름없는 패키지에 속하게 됨

// 패키지를 생성했을 때
package practicepack.test; //패키지 구문 포함. 패키지가 없다면 구문 필요없음

public class PackageEx {

}

자바에 기본적으로 포함되어있는 대표 패키지

java.lang - 자바의 기본 클래스 모임
java.util - 자바의 확장 클래스 모임
java.io, java.nio - 자바의 입출력 관련 클래스 모임
Ex) String 클래스의 실제이름 java.lang.String 여기서 java.lang은 패키지명이고 .을 이용해 디렉토리 계층구조를 나타냄

패키지로 클래스를 묶었을 시의 장점

클래스의 충돌을 방지 할 수 있다
Ex) 같은 이름을 가진 클래스라도 패키지가 다르면 충돌이 없다

import문

다른 패키지 내의 클래스를 사용하기 위해 사용, 일반적으로 패키지구문과 클래스구문 사이에 작성
import 패키지명.클래스명, import 패키지명.;
같은 패키지에서 여러 클래스가 생성 될때 import 패키지명.
;을 사용하면 해당 패키지의 모든 클래스를 패키지명없이 사용가능

package example2;

public class example2 {

}
package example;
import example2.example2;

public class example {
    public static void main(String[] args) {

        example2 ex = new example2();

    }
}

import로 example2 패키지의 example2 클래스를 불러왔기때문에
example 패키지에서 사용가능
ps) import문은 컴파일시에 처리가 되므로 프로그램 성능 저하에는 영향이 없다

profile
버즈라이트이어

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN