패키지
: 서로 관련된 클래스와 인터페이스의 컴파일된 클래스 파일들을 하나의 디렉터리에 묶어 놓은 것
모듈
: 여러 패키지와 이미지 등의 자원을 모아 놓은 컨테이너
<목적>
<패키지명과 클래스의 경로명> - 점(.)으로 연결
Project.FileO.Tools.class
Project.UI.Tools.class
일종의 디렉터리(폴더), 자바 API는 이곳에 담겨 제공된다
패키지는 관련 코드를 하나로 묶어, 관리를 수월하게 한다
package 패키지명;
-컴파일한 클래스 파일을 패키지명의 디렉터리에 저장하라는 지시
-소스파일 첫 줄에 선언
package UI; // Tools 클래스를 컴파일하여 UI 패키지에 저장할 것을 지시
public class Tools { // 이제 이 클래스의 경로명은 UI.Tools가 된다.
...
}
이로써, Tools 클래스의 경로명은 UI.Tools
가 되어 다른 클래스에서 Tools 클래스를 사용하려면 import UI.Tools
<디폴트 패키지>
package 선언문 없이 만들어진 클래스의 패키지로 현재 디렉터리에 저장된다.
import
이용하지 않는 경우java.util.Scanner scanner = new java.util.Scanner(System.in);
소스 내 패키지 이름과 클래스 이름의 전체 경로명을 써줘야함
import
이용하는 경우import java.util.Scanner;
...
Scanner scanner = new Scanner(System.in);
import java.util.ArrayList;
배열을 기반으로 한 컬렉션의 하나. 데이터를 추가, 삭제시 내부에서 동적으로 배열의 길이를 조절.
//ArrayList의 사용
ArrayList<String> names = new ArrayList<String>();
names.add("Kim");
names.add("Lee");
names.add("Park");
System.out.println(names.get(1)); // "Lee"
names.remove(1); // names -> {"Kim", "Park"}
names.set(0, "Choi"); // names -> {"Choi", "Park"}
System.out.println(names.size()); // 2
: 패키지와 이미지 등의 리소스를 담은 컨테이너로 모듈 파일(.jmod)
로 저장한다
프로그램을 만들기 위한 도구, API를 사용하면 더 편리한 프로그래밍이 가능하다
자바 API는 패키지로 제공된다