[JAVA] Import

11809 단어 JavaJava

1. 같은 패키지의 다른 클래스 이용하기

package com.yj.java;

public class OtherClassTest {
	
	public static void main(String[] args) {
		// 1. 클래스 객체 생성
		OtherClass oc = new OtherClass();
		// 3. 메소드 호출부
		oc.callMethod(); // OtherClass 클래스입니다.
	}
}
package com.yj.java;

public class OtherClass {
	// 2. 메소드 선언부
	public void callMethod() {
		System.out.println("OtherClass 클래스입니다.");
	}

}
  • 이 클래스에는 메인 메소드 필요 없음
  • 메인메소드 = 실행메소드
  • 같은 패키지라면 다른 클래스라도 import없이 사용가능

2. 다른 패키지의 클래스 이용하기

package com.yj.java;

// 2. import문
import com.yj.java.importTest.OtherPackage;

public class OtherPackageTest {
	
	public static void main(String[] args) {
		
		// 1. 클래스 객체 생성
		OtherPackage it = new OtherPackage();
		// 4. 메소드 호출부
		it.callMethod(); // ImportTest 클래스입니다.
	}
}
package com.yj.java.importTest;

public class OtherPackage {
	// 3. 메소드 선언부
	public void callMethod() {
		System.out.println("OtherPackage 클래스입니다.");
	}
}
  • 다른 패키지의 클래스를 가져다 쓰려면 import가 필요함
  • import하지 않고 다른 패키지의 클래스를 가져다 쓰려 한다면 에러
  • import문 작성법
import 패키지名.클래스名;
  • 또는 Ctrl + SpaceBar를 이용

    cf. import문 없이 다른 패키지의 클래스 객체를 생성하는 법
package com.yj.java;

public class OtherPackageTest {
	
	public static void main(String[] args) {
		
		// 클래스 객체 생성 방법
        	// 1. import문 사용
		//OtherPackage it = new OtherPackage();
		// 2. import문 미사용
        	com.yj.java.importTest.OtherPackage it = new com.yj.java.importTest.OtherPackage();
        
		it.callMethod();
	}
}
  • 클래스 선언시 import문이 아닌, 패키지명을 포함한 클래스명으로 작성함
  • 보통의 경우는 import문을 사용하지만,
    패키지는 다르지만 같은 이름의 클래스들을 한 클래스 내에서 동시에 사용하는 경우,
    위와 같은 방식으로 어떤 패키지의 클래스를 사용하는지 명시해줌
  • 애초에 같은 이름의 클래스가 import되어 있으면, 패키지가 다르더라도 해당 이름의 클래스로는 import 불가

3. JDK에서 제공하는 클래스 이용하기

java8 api 보기 - oracle

  • JDK API : JDK에서 제공하는 수많은 클래스들. 자바 프로그램을 만들 때 손쉽게 가져다 쓸 수 있도록 코드를 미리 작성해둔 클래스들.

java.util.Date 클래스 사용해보기

package com.yj.java;

// 2. import문
import java.util.Date;

/**
 * JDK API 사용하기
 */
public class JdkClassTest {
	
	public static void main(String[] args) {
		
		// 1. 클래스 객체 생성
		Date date = new Date();
		// 3. 객체 사용
		System.out.println(date); // Tue Dec 14 23:42:48 KST 2021
	}
}

cf. java.lang 패키지

System.out.println();
  • System클래스 : java.lang.System
  • 엄연히 다른 패키지의 클래스를 가져다 쓰는 것인데 import문 없이 사용 가능한 이유
    • 예외 : java.lang패키지의 모든 클래스는 import문 없이 사용 가능함
      why? java.lang패키지 내 클래스들은 다른 패키지들보다 사용빈도가 높기 때문에 import문을 생략하여 사용함
  • java.lang패키지의 클래스들
    - Boolean
    • Byte
    • Character
    • Long
    • Math
    • Object
    • String
    • System
    • ...

좋은 웹페이지 즐겨찾기