본문 바로가기
study/Java

[Java] 23. 패키지

by 금이패런츠 2022. 3. 21.
728x90
반응형
package chap7;

import java.util.Date; //Date

//import chap7.test.Pack2;  //import패키지(chap7.test).클래스(Pack2)
import chap7.test.*; //chap7.test에 속한 모든 클래스는 패키지명 생략.

/*
 * 패키지 예제
 * 
 * package
 *  1. 클래스들의 모임.
 *  2. 클래스의 이름은 패키지명을 포함한다.
 *  3. package 설정은 파일의 처음 한번만 가능함.
 *     => 하나의 파일안의 모든 클래스는 같은 패키지의 클래스다.
 *  4. 자바에서 패키지는 폴더로 구분된다.
 *     
 * import : 클래스 이름의 패키지명을 생략 할 수 있도록 미리 사용될 클래스의 이름 지정  
 * 
 * 클래스의 패키지명을 생략할 수 있는 경우
 * 1. 같은 패키지에 속한 클래스의 이름은 패키지명 생략 가능.
 * 2. java.lang 패키지에 속한 클래스들은 패키지명 생략 가능.
 * 3. import 구문에 설정된 클래스는 패키지명 생략 가능.
 */
class Pack1 {
	void method() {
		System.out.println("chap7.Pack1 클래스의 method 메서드");
	}
}
public class PackageEx1 {
	public static void main(String[] args) {
		java.util.Date today = new java.util.Date(); //너무 복잡해진다. 코딩량이 많아진다.
		System.out.println(today);
		Date today2 = new Date();
		//Pack1 클래스의 method 메서드 호출하기
		Pack1 p = new Pack1(); //PackageEx1 클래스와 Pack1 클래스가 같은 패키지의 클래스이므로 패키지명 생략가능
		p.method();
		//chap7.test Pack2 클래스의 method 메서드 호출하기
		Pack2 p2 = new Pack2();
		p2.method();
	}
}
//package a;
class A {}

 

1. chap7에 chap7.test패키지 생성

2. chap7.test에 Pack2클래스 생성

package chap7.test;

public class Pack2 {
	public void method() {
		System.out.println("chap7.test.Pack2클래스의 method() 메서드");
	}
}
728x90
반응형