System 클래스
System
클래스의 가장 큰 특징은, 생성자가 없다는 것이다.System
클래스는 아래의 3가지 변수를 갖는다. -> 아래 3가지 메서드 모두 리턴 타입이 입출력과 관련된 클래스이다.static PrintStream err
: 에러 및 오류를 출력할 때 사용static InputStream in
: 입력값을 처리할 때 사용static PrintStream out
: 출력값을 처리할 때 사용
1. 시스템 속성(Property) 값 관리
Property?
자바를 실행하면
Properties
객체가 생성되며, 그 값은 언제, 어디서든 JVM 내에서 꺼낼 수 있다.
Properties
는java.util
패키지에 속하며,Hashtable
의 상속을 받은 클래스이다.
static String clearProperty(String key)
key 에 저장된 시스템 속성을 제거한다.
static Properties getProperties()
현재 시스템 속성을 Properties 클래스 형태로 제공한다.
static String getProperty(String key)
Key 에 지정된 문자열로 된 시스템 속성값을 얻는다.
static String getProperty(String key, String def)
Key 에 지정된 문자열로된 시스템 속성값을 얻고, 만약 없으면, def에 지정된 값을 리턴한다.
static void setProperties(Properties props)
매개변수로 넘겨주는 변수에 있는 값들을 시스템 속성에 넣는다.
static String setProperty(String key, String value)
key 에 지정된 시스템 속성의 값을 value로 대체한다.
2. 시스템 환경(Enviroment) 값 조회
static Map<String, String> getenv()
현재 시스템 환경에 대한 Map 형태의 리턴값을 받는다.
static String getenv(String name)
지정한 name 에 해당하는 값을 받는다. -> Properties 값은 추가할 수도, 변경할 수도 있다. 하지만 env 값은 변경할 수 없고 읽을 수만 있다.
3. GC 수행(GC 는 JVM 이 필요할 때 알아서 하니, 사용하지 말자..)
static void gc()
가비지 콜렉터를 실행한다.
static void runFinalization
C 처리를 기다리는 모든 객체에 대하여
finalize()
메소드를 실행한다.
4. JVM 종료(절대 사용하지 말아라...!)
static void exit(int status)
현재 실행중인 JVM 을 멈춘다.
5. 현재 시간 조회
static long currentTimeMillis()
현재 시간을 밀리초 단위로 리턴.
static log nanoTime()
현재 시간을 나노초 단위로 리턴. -> 시간 측정을 위해서 만든 메서드
Last updated