JAVA

[Java] package

sagesse2021 2021. 10. 29. 18:30
반응형
        /* package 키워드
		 * - 특정 클래스 파일 첫 번째 라인에 해당 클래스가 소속된 패키지명 명시
		 * - 실제 클래스 파일의 위치와 패키지명이 다를 경우 오류 발생
		 * - 반드시 주석을 제외한 첫 번째 라인에서 사용 
		 *   => 클래스 내에서 단 한 번만 사용 가능
		 * - 패키지 키워드 사용 기본 문법
		 *   소스코드 첫 번째 라인에서 
		 *   package 패키지명;
		 *   
		 * import 키워드
		 * - 원래 클래스 이름 지정 시 패키지명.클래스명 형태로 지정해야하지만
		 *   특정 패키지를 자주 사용하는 경우 import 문을 사용하여
		 *   해당 패키지와 클래스명을 지정할 경우 패키지명 생략 가능함
		 *   (단, 같은 패키지 내의 클래스는 패키지명을 생략 가능!)
		 * - java.lang 패키지는 유일하게 import 없이도 생략 가능한 패키지
		 *   => 그 외의 모든 패키지는 반드시 위치 정보가 필요함
		 * - import 문은 패키지명보다 아래쪽, 클래스 선언부보다 윗쪽에 위치하며
		 *   package 문과 달리 여러번 작성 가능
		 */
package pack_one;
import java.io.*;
import java.util.*;
public class Ex {

	public static void main(String[] args) {

		// java.lang 패키지에 위치한 String 클래스를 지정하는 방법(정석)
		// => 패키지명을 명시하고 . 을 붙인 뒤 클래스명을 지정함
		java.lang.String str; // java.lang 패키지의 String 클래스 선언
		// => java.lang 패키지는 생략 가능한 패키지 이름이므로 클래스명만 지정 가능
		String str2; //java.lang 패키지명 생략가능
		
		// java.lang 패키지 외의 나머지 패키지명을 생략할 경우
//		Random r; // 컴파일 에러 발생!
		// java.util 패키지의 Random 클래스는 생략 불가능한 패키지명이므로
		// 1. 클래스명 앞에 java.util 패키지명을 명시
		java.util.Random r;
		/// 2. 클래스가 포함된 패키지를 import 문으로 지정할 경우 
		//    패키지명을 생략하고 클래스명만 사용 가능
		Random r2;
		
		ArrayList list;
		
		IOException e1; //Ctrl + Shift + O = import하기
		BufferedReader reader;
	}

}
반응형

'JAVA' 카테고리의 다른 글

[Java] static 메서드  (0) 2021.10.29
[Java] static 변수  (0) 2021.10.29
[Java] 생성자 this()  (0) 2021.10.29
[Java] this 키워드  (0) 2021.10.29
[Java] 파라미터 전달 방식의 차이(기본데이터타입,참조데이터타입)  (0) 2021.10.29