Dev/Java
[Java] 자바의 정석 기초편 ch7-15,16 import문, static import문
코딩삐약
2022. 6. 13. 14:29
ch7-15 import문
- 클래스를 사용할 때 패키지이름을 생략할 수 있다.
- 컴파일러에게 클래스가 속한 패키지를 알려준다. => 이클립스 import 단축키 - ctrl+shift+o
class ImportTest {
java.util.Date today = new java.util.Date();
//...
}
//---> 패키지 이름 생략가능
import java.util.Date;
class ImportTest {
Date today = new Date();
}
- java.lang 패키지의 클래스는 import하지 않고도 사용할 수 있다. - 기본 패키지임
ex) String, Object, System, Thread ...
import java.lang.*; // * 모든 클래스
class ImportTest2 {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
ch7-15 import문의 선언
- import문을 선언하는 방법은 다음과 같다.
import 패키지명.클래스명;
또는
import 패키지명.*; //모든 클래스
- import문은 패키지문과 클래스선언의 사이에 선언한다.
package com.codechobo.book; // 패키지 선언
import java.text.SimpleDateFormat; // import문
import java.util.*;
public class PackageTest { // 클래스 정의문
public static void main(String[] args) {
Date today = new Date();
SimpleDateFormat date = new SimpleDateFormat("yyyy/MM/dd");
}
}
- import문은 컴파일 시에 처리되므로 프로그램의 성능에 영향없음.
import java.util.Calendar;
import java.util.Date;
import java.util.ArrayList;
-> import java.util.*; // java.util 패키지의 모든 클래스
- 다음의 두 코드는 서로 의미가 다르다.
import java.util.*;
import java.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){
java.util.Date today = new java.util.Date();
}
}
ch7-16 static import문
- 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());