1. 패키지 (Package)
- 유사한 기능을 가진 클래스와 인터페이스를 묶어 관리하도록 하며 개발이 끝난 후 jar 파일로 묶어 배포한다
- 패키지 선언은 최상단에 위치하며 import문 보다도 위에 있어야 한다
- 패키지명은 소문자로 주로 한다
- 패키지선언에서 패키지 안에 있는 클래스에 접근시 . 으로 접근한다
(즉, 패키지명.클래스 (java.lang.System))
- 파일 관리시 디렉토리 개념과 같다. 같은 종류끼리 묶어서 관리하는것 처럼 말이다
- JAVA에서 패키지를 선언했다는 것은 class 파일이 그 패키지 안에 있어야 한다는 의미다
2. 패키지 배포
- 패키지를 jar로 압축하여 배포한다. 압축시 패키지의 루트 패키지를 압축한다
- jar 사용법: jar cvf jar파일명(xxx.jar) 루트패키지(디렉토리)
dos>jar cvf my.jar my
- jar 생성후 jdk버전\jre\lib\ext디렉토리에 jar파일을 복사한다
- jvm이 외부 라이브러리(클래스파일)는 ext디렉토리에서 찾는다.
* 이클립스 사용시
- jar파일로 묶는 방법
- 루트 패키지 선택 -> 마우스 우클릭 -> export -> java의 Jar file선택 -> 필요한 패키지 체크후 finish
- jar파일 가져다 쓰는 방법 1
- Poject선택후 마우스 우클릭 -> Build Path -> Configure Build Path -> Add External Jars 클릭후 jar로 묶은 파일 선택
- jar파일 가져다 쓰는 방법 2
- jdk가 설치된 디렉토리 즉, jdk1.7.0_40\jre\lib\ext 폴더에 jar파일을 넣어 놓으면 이클립스가 끌어옴.
※ 자주 사용하는 패키지
- java.io : 파일을 다루는 클래스와 입,출력을 담당하는 스트림들을 포함
- java.lang : 자바의 기본패키지로서 System클래스등 아주 기본적이고 자주 사용하게될 클래스
(String,Wrapper,Math,Thread등)
- java.util : 자료구조 콜렉션, 날짜/시간 클래스등 유틸리티성 클래스들을 포함(Random클래스
,ArrayList,LiinkedList,Stack,Calendar등)
- java.awt : 자바에서 윈도우 어플리케이션을 제작할수 있는 클래스들을 포함.(Button,Color,Graphics등)
- javax.swing : 확장된 윈도우 어플리케이션을 제작할수 있는 클래스들을 포함 (주로 Awt클래스에 J가 붙음)
- java.net : 네트워크 프로그램을 제작할수 있는 소켓등을 포함
- java.sql : 데이터베이스와 연동시 필요한 클래스들을 포함
'개발 > JAVA' 카테고리의 다른 글
17. JAVA 인터페이스 (Interface) / 컬렉션 (Collection) (0) | 2020.06.08 |
---|---|
16. JAVA 배열 (Array) / 헤테로지니어스 (Heterogeneous, 이질화) (0) | 2020.06.08 |
14. JAVA 추상화 / 캡슐화 / 은닉화 / 생성자 / 싱글톤 (0) | 2020.06.08 |
13. JAVA 상속성 / 오버로딩(OverLoading) / 오버라이딩(OverRiding) / this / super (0) | 2020.06.08 |
12. JAVA ect 클래스 (Math / Date / Calendar / SimpleDateFormat) (0) | 2020.06.08 |