java 기초 -- System, Runtime 대상 (1)
1: System 클래스:
자바 에서 사용 하 는 System 대상 입 니 다. 우 리 는 System. out. print 를 자주 사용 합 니 다. 또한 이것 은 콘 솔 에서 문 구 를 출력 할 수 있 는 것 일 뿐 내 적 실현 원 리 를 깊이 연구 하지 않 습 니 다.다음은 System 대상 을 자세히 소개 하 겠 습 니 다. 1. JDK 에는 다음 과 같은 정의 가 있 습 니 다. The System class contains several useful class fields and methods. It cannot be instantiated. 즉, System 대상 은 예화 되 지 않 고 속성 과 방법 을 호출 하여 사용 할 수 밖 에 없다 는 것 이다. 2. System 의 속성 Systme. in 은 InputStream 형식 으로 콘 솔 에서 입력 한 정 보 를 받 아들 일 수 있 습 니 다.System. out 과 System. err 는 모두 PrintStream 형식 으로 콘 솔 에서 정 보 를 출력 할 수 있 습 니 다. 3. System. getProperties () 는 Properties 형식의 대상 을 되 돌려 주 고, 되 돌아 오 는 정 보 는 자바 가상 컴퓨터 시작 과정 에서 불 러 올 환경 설정 정보 입 니 다.아래 코드 를 통 해 정 보 를 얻 고 출력 할 수 있 습 니 다. Properties 는 HashTable 의 하위 클래스 이기 때문에 Map 방법 으로 이 집합 에 있 는 요 소 를 추출 할 수 있 습 니 다.
import java.util.*;
public class SystemDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Properties prop=System.getProperties();
for(Object key:prop.keySet()){
String keyStr=(String)key;
String value=prop.getProperty(keyStr);
System.out.println(keyStr+" --- "+value);
}
}
}
다음 코드 를 사용 하면 콘 솔 출력 시스템 환경 설정 정 보 를 사용 할 수 있 습 니 다.
public class SystemDemo {
public static void main(String[] args) {
System.getProperties().list(System.out);
}
}
System 대상 을 통 해 시스템 에서 특유 의 정 보 를 사용자 정의 할 수 있 습 니 다.
System.setProperty(myKey , myValue);
그리고 주의해 야 할 점 은: 시스템 포 퍼 티 란 시스템 은 JRE (runtime) system 을 가리 키 며 OS 가 아니다.
System.setProperty("net.jxta.tls.principal", "client"); System.setProperty("net.jxta.tls.password", "password"); System.setProperty("JXTA_HOME",System.getProperty("JXTA_HOME","client")); 시스템 속성 을 이용 하여 여러 드라이브 를 불 러 올 수 있 습 니 다.
다음은 완전한 코드 와 설명 프로그램 을 보 여 줍 니 다.
/*
System: static。
out: ,
in: ,
:Properties getProperties();
*/
import java.util.*;
class SystemDemo
{
public static void main(String[] args)
{
//
Properties prop=System.getProperties();
// Properties HashMap , Map
// map 。
// ,
//
System.setProperty("myKey","myValue");
//
String value=System.getProperty("os.name");
System.out.println("value=:"+value);
// jvm ,
String v=System.getProperty("haha");
System.out.println("v=:"+v);
/*
//
for(Object obj: prop.keySet())
{
String value =(String)prop.get(obj);
System.out.println(obj+"::"+value);
}
*/
}
}
두 번 째: Runtime 클래스:
자바 의 Runtime 대상 은 구조 함 수 를 제공 하지 않 았 습 니 다.
(1) 이 종 류 는 new 를 사용 하여 대상 을 만 들 수 없다 는 것 을 설명 한다.
(2) 이런 방법 은 모두 정적 일 수 있다.
(3) 이러한 API 에 비정 상 방법 이 있 음 을 발견 했다.
(4) 이 종 류 는 이러한 대상 을 얻 는 방법 을 제공 하고 이 방법 은 정적 이 며 반환 값 유형 은 본 유형 임 을 설명 한다.
(5) 상기 정 보 를 통 해 알 수 있 듯 이 이런 유형 은 단일 디자인 모델 로 완성 되 었 다.
Runtime 대상 을 사용 하면 프로그램 실행 파일 (exe 파일) 을 열 고 프로그램 을 시작 할 수 있 습 니 다.
다음은 완전한 코드 와 설명 을 드 립 니 다.
/*
Runtime
, new ,
。 ,
static Runtime getRuntime();
*/
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime r=Runtime.getRuntime();
Process p=r.exec("notepad.exe");
//
Thread.sleep(4000);
p.destroy();
System.out.println("Hello World!");
}
}
몇 가지 지식 을 보충 하 다.
(1): 단일 디자인 모델: 단일 모델 은 자주 사용 하 는 소프트웨어 디자인 모델 이다.그것 의 핵심 구조 에는 단 례 류 라 고 불 리 는 특수 류 만 포함 되 어 있다.단일 사례 모델 을 통 해 시스템 의 한 가지 사례 만 있 고 이 사례 는 외부 방문 이 쉬 워 서 사례 개수 에 대한 통제 와 시스템 자원 을 절약 할 수 있다.시스템 에서 어떤 유형의 대상 이 하나만 존재 하 기 를 원한 다 면 단일 모델 이 가장 좋 은 해결 방안 이다.
(2) \ \ 는 전의 문자 로 뒤에 붙 어 있 는 알파벳 을 전 의 했 기 때문에 파일 의 경 로 는 \ \ 또는 / 로 나 누 어야 합 니 다.
(3) abstract 추상 류 는 대상 을 만 들 수 없습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.