06-36.1 패키지란?
- 패키지란 클래스를 관리하는데 사용한다.
- 클래스는 자바 파일을 작성한 뒤 컴파일 하면 생성된다.
- 생성된 클래스도 파일이다.
- 컴퓨터의 파일을 폴더별로 나누어 정리하는 것처럼
- 자바도 관련한 클래스를 폴더별로 관리한다.
- 이 때 "package"라는 키워드를 사용한다.
- 패키지명은 다른 프로젝트나 다른 회사 다른 프로그래밍과 중복되지 않도록
- 도메인명을 거꾸로 적은 후 프로젝트명을 붙여서 사용한다.
06-36.2 패키지 만들기
- 패키지명은 "폴더명.폴더명"으로 만들어진다.
- 폴더명은 숫자로 시작할 수 없다.
(1) 이클립스의 src폴더에서 마우스 오른쪽 New > Package 클릭
(2) name에 도메인명( com.eightcruz) 과 프로젝트명 (.javastudy)도 적어준다.
(3) 만들어진 패키지에서 오른쪽 마우스 New > Class 선택
(4) Hello라는 클래스를 만든다.
(5) 파일 탐색기 C드라이브 > javaStudy > src > com > eightcruz > javastudy > Hello.java파일이 있다.
06-36.3 생성한 패키지를 사용해보자.
(1) javaStudy패키지에 HelloEexam 만들기
(2) HelloExam파일 안에서 Hello클래스를 사용해보자
<hide/>
package javaStudy;
public class HelloExam {
public static void main(String[] args) {
Hello hello = new Hello();
}
}
(3) 출력 결과: Hello cannot be resolved to a type
(4) Hello 클래스를 정의하지 않았다고 에러가 발생한다.
(5) 따라서 다른 패키지에 들어있는 클래스를 사용하기 위해 import를 사용한다.
Def) import : 다른 패키지에 있는 클래스를 사용하기 위한 키워드 ( import문 추가 : Ctrl + Shift + O )
- java.lang은 가장 기본이 되는 클래스들을 포함한다.
<hide/>
package javaStudy;
import com.eightcruz.javastudy.Hello;
public class HelloExam {
public static void main(String[] args) {
Hello hello = new Hello();
}
}
(6) javastudy패키지 안에 있는 Hello 클래스를 쓰겠다고 imfort로 명시해줘야 Hello클래스를 사용할 수 있다.
(7) 이 때 클래스명 앞에 *을 사용해서 해당 패키지 안에 있는 모든 클래스를 사용하겠다고
(8) 컴파일러와 jvm에 알려줄 수 있다.
<hide/>
package javaStudy;
import com.eightcruz.javastudy.*;
public class HelloExam {
public static void main(String[] args) {
Hello hello = new Hello();
}
}
(9) import를 사용하지 않으면 클래스를 쓸 때마다 클래스 앞에 일일이 패키지명을 붙여여 한다.
<hide/>
public static void main(String[] args) {
com.eightcruz.javastudy.Hello hello = new com.eightcruz.javastudy.Hello();
}
'Java > 모두의 자바' 카테고리의 다른 글
Chapter 07-38 접근 제한자 (0) | 2022.02.08 |
---|---|
Chapter 07-37 상속이란? (0) | 2022.02.08 |
Chapter 06-35 생성자 오버로딩과 this (0) | 2022.02.07 |
Chapter 06-34 메서드 오버로딩 (0) | 2022.02.07 |
Chapter 06-33 this (0) | 2022.02.07 |