컴파일 : 프로그램이 프로그래밍 언어 문법에 잘 맞는지 확인하고,
컴퓨터가 이해할 수 있는 언어로 번역하는 작업이다.
컴파일러 : 위와 같은 작업을 하는 프로그램을 컴파일러라고 한다.
package a.b.c.com;
public class HelloPackage{
System.out.println("Hello Package");
}
자바 소스 코드에서 클래스의 패키지 선언은 위와 같이 맨 위에서 한다.
클래스의 이름은 "HelloPackage"이지만, 클래스의 전체 이름은 "a.b.c.com.HelloPackage" 이다.
이를 "NameSpace"라고 한다. 클래스의 이름이 같아도 패키지 이름이 다르면 클래스의 전체 이름이 다르므로 다른 클래스가 된다.
일반적으로 컴파일은 해당 통합 개발 환경(IDE: Integrated Development Environment)에서 자동적으로 처리해주기 때문에 직접 컴파일을 확인하기 위해서 MS DOS console을 이용한다.
해당 자바소스 파일이 있는 폴더를 찾아간다. 해당 파일이 C드라이브에 있다고 가정하겠다.
C:\> javac -d . HelloPackage.java
- HelloPackage.java : 자바소스 파일
- javac : 컴파일 명령어
- -d : 디렉토리를 만들어서 그 위치에 클래스 파일을 만든다.
- . : dot 연산자, 현재 디렉토리부터 패키지를 만들기 시작한다.
C:\a\b\c\com\HelloPackage.class
C:\>java a.b.c.com.HelloPackage
Hello Package
위와 같이 "Hello Package"가 출력되었다면 패키지 컴파일을 성공적으로 수행한 것이다.
클래스의 전체 이름 "a.b.c.com.HelloPackage"을 "NameSpace"라고 했다.
자바를 통해 클래스를 실행하려면 NameSpace를 입력해줘야 한다.