📚 참고
자바의 정석 기초편 (객체지향개념만)

 

 

 

 

 

 

 

 

 

 

import문

 

  • 클래스를 사용할 때, 패키지 이름을 생략할 수 있다.
  • 컴파일러에게 클래스가 속한 패키지를 알려준다.

 

 

  •  import문 사용 X

 

class ImportTest {
    java.util.Date today = new java.util.Date();
}

 

 

 

 

 

  • import문 사용 O
import java.util.Date;

class ImportTest {
    Date today = new Date();
}

 

  • java.lang 패키지의 클래스는 자바의 기본 클래스이기 때문에 import 하지 않고도 사용할 수 있다.
    • ex) String, Object, System, Thread, ...

 

 

 

 

 

 

 

 

 

 

import문의 선언

 

  • 선언 방법

 

  1. import 패키지명.클래스명;
  2. import 패키지명.*;
    • * 은 해당 패키지 하위의 모든 클래스를 뜻함

 

 

 

 

 

  • import문은 패키지 선언과 클래스 선언 사이에 선언한다.
  • import문은 컴파일 시에 처리되므로 프로그램의 성능에 영향 없다.

 

import java.util.Calendar;
import java.util.Date;
import java.util.ArrayList;

// * 로 모든 클래스를 import 한다고 하더라도 성능에 영향을 주지않는다.
import java.util.*

 

 

 

 

 

  • 다음의 두 코드는 의미가 다르다.

 

import java.util.*;		// util 패키지 밑의 모든 클래스
import java.text.*;		// text 패키지 밑의 모든 클래스

import java.*;			// java 패키지의 모든 클래스 (패키지는 포함 안됨)

 

 

 

 

 

  • 이름이 같은 클래스가 속한 두 패키지를 import 할 때는 클래스 앞에 패키지명을 붙여줘야 한다.

 

import java.sql.*;		// java.sql.Date
import java.util.*;		// java.util.Date

public class ImportTest {
    public static void main(String[] args) {
        // 컴파일러가 sql 패키지 밑의 Date 클래스인지, util 패키지 밑의 Date 클래스인지 구별할 수 없으므로
        // 클래스 앞에 패키지명을 붙여준다.
        java.util.Date today = new java.util.Date();
    }
}

 

 

 

 

 

 

 

 

 

 

static import문

 

  • static 멤버(static 변수, static 메서드)를 사용할 때, 클래스 이름을 생략할 수 있게 해준다.

 

import static java.lang.Integer.*;	// Integer 클래스의 모든 static 메서드
import static java.lang.Math.random;	// Math 클래스의 random 메서드만 (괄호 안 붙임)
import static java.lang.System.out;	// System.out을 out만으로 참조가능

System.out.println(Math.random());


// =>


out.println(random());

 

 

 

 

 

 

 

 

 

 

'JAVA > 객체지향개념' 카테고리의 다른 글

캡슐화💊  (0) 2021.03.19
접근 제어자 (Access Modifier)  (0) 2021.03.18
패키지, 클래스 패스  (0) 2021.03.17
참조변수 super, 조상의 생성자 super()  (0) 2021.03.17
오버라이딩 (Overriding)  (0) 2021.03.16