본문 바로가기

Java

Java import문

 

import문
- 다른 패키지의 클래스를 사용하기 위해 패키지명이 포함된 클래스 이름을 사용해야하는데, import문을 이용하여 클래스를 사용할 때 패키지명을 생략할 수 있음
- import문은 컴파일러에게 클래스가 속한 패키지를 알려줌
- java.lang 패키지의 클래스는 Import하지 않고 사용 가능 EX. String, Object, System, Thread...

// 이클립스 단축키 ctrl+ shift+o 자동으로 Import 생성

 


import문의 선언

- import문은 컴파일 시에 처리되므로 프로그램 성능에 영향 없음
- 이름이 같은 클래스가 속한 두 패키지를 import할 때는 클래스 앞에 패키지명을 붙여줘야 함

 

import 패키지명.클래스명;

// 또는

import 패키지명.*;  // *로 쓴다고해서 성능 저하x, 구체적으로 쓰는 경우에는 가독성(?)이 좋으므로 선택해서 쓰면됨

 

 

import문의 위치
패키지문과 클래스 선언 사이

 

package com.codechobo.book; // 1. 패키지선언

import java.awt.*;	    // 2. import문 
import static java.lang.Math.random;

class 클래스명 { 		   // 3. 클래스 선언
// ...
}




static import문
static멤버를 사용할 때 클래스 이름을 생략할 수 있게 해줌

import static java.lang.Integer.*; // Integer 클래스의 모든 static 멤버(static 변수, static 메서드)
import static java.lang.Math.random; // Math.random()만 static멤버 사용 시 클래스 이름 생략, +괄호 안붙이고 Import
import static java.lang.System.out; // System.out을 out만으로 참조 가능

 

import static java.lang.System.out; // System.out을 out만으로 참조 가능
import static java.lang.Math.*; // Math 패키지의 모든 static 멤버 사용 가능

class Ex7_6 {
	public static void main(String[] args) {
		 System.out.println(Math.random()); // 원래 이렇게 써야하지만 
		out.println(random()); // static import 했기때문에 이렇게 간략하게 쓸 수 있음

		 System.out.println("Math.PI :"+Math.PI); // 원래 이렇게 써야하지만  //PI는 static 상수
		out.println("Math.PI :" + PI); // static import 했기때문에 이렇게 간략하게 쓸 수 있음
	}
}