全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.lang.System

java.lang.Object
   |
   +----java.lang.System

public final class System
extends Object
クラス System には便利なクラスフィールドおよびメソッドがあります。インスタンスを作成することはできません。

クラス System によって得られる機能には標準入力、標準出力、およびエラー出力ストリーム、外部的に定義された " プロパティ " へのアクセス、ファイルおよびライブラリのローディング方法、配列の一部をすみやかにコピーするユーティリティメソッドがあります。


Variable Index

 o err
" 標準 " エラー出力ストリーム。
 o in
" 標準 " 入力ストリーム。
 o out
" 標準 " 出力ストリーム。

Method Index

 o arraycopy(Object, int, Object, int, int)
指定位置で開始する指定されたソース配列から転送先配列の指定位置に配列をコピーする。
 o currentTimeMillis()
ミリ秒で表した現在時間を返す。
 o exit(int)
現在実行している Java の仮想マシンを終了する。
 o gc()
ガベージコレクターを実行する。
 o getenv(String)
環境変数を取得する。 推奨されない。
 o getProperties()
現在のシステムプロパティを決定する。
 o getProperty(String)
指定されたキーによって表されるシステムプロパティを取得する。
 o getProperty(String, String)
指定されたキーによって表されるシステムプロパティを取得する。
 o getSecurityManager()
システムセキュリティインターフェースを取得する。
 o identityHashCode(Object)
所定オブジェクトのクラスが hashCode() をオーバーライドするかどうかに関係なく、デフォルトメソッド hashCode() によって返されるものと同じ所定オブジェクトの hashcode を返す。
 o load(String)
指定されたファイル名をダイナミックライブラリとしてロードする。
 o loadLibrary(String)
引数 libname によって指定されるシステムライブラリをロードする。
 o runFinalization()
ファイナライズ待ちのオブジェクトのファイナライズメソッドを実行する。
 o runFinalizersOnExit(boolean)
終了時のファイナライズを可能または不可能にする。これを実行することによって、自動的に呼び出されていないファイナライザをもつオブジェクトすべてのファイナライザが呼び出されて、Java の runtime 終了前にこれを実行する。
 o setErr(PrintStream)
" 標準 " エラー出力ストリームを再度代入する。
 o setIn(InputStream)
" 標準 " 入力ストリームを再度代入する。
 o setOut(PrintStream)
" 標準 " 出力ストリームを再度代入する。
 o setProperties(Properties)
システムプロパティを引数 Properties に設定する。
 o setSecurityManager(SecurityManager)
システムセキュリティを設定する。

Variables

 o in
  public static final InputStream in
" 標準 " 入力ストリーム。このストリームは既に開いていて、入力データの供給が可能です。通常、このストリームはキーボード入力、またはホスト環境やユーザによって指定されるその他の入力ソースと一致しています。
 o out
  public static final PrintStream out
" 標準 " 出力ストリーム。このストリームは既に開いていて、出力データの受け取りが可能です。通常、このストリームはディスプレイ出力、またはホスト環境やユーザによって指定されるその他の出力先と一致しています。

単純なスタンドアロンの Java アプリケーションにおいて、出力データのラインを書き込む一般的な方法は以下の通りです。

     System.out.println(data)
 

クラス PrintStream のメソッド println を参照して下さい。

参照:
println, println, println, println, println, println, println, println, println, println
 o err
  public static final PrintStream err
The " 標準 " エラー出力ストリーム。このストリームは既に開いていて、出力データの受取が可能です。

通常、このストリームはディスプレイ出力、またはホスト環境やユーザによって指定される出力先の出力と一致します。主な出力ストリームである変数 out 値を、一般的に継続モニターしないファイルまたはその他の転送先に再度返す場合であっても、規定により、この出力ストリームはユーザに注意を促すためにすばやく表示されるエラーメッセージまたはその他の情報を表示するために使用します。

Methods

 o setIn
  public static void setIn(InputStream in)
" 標準 " 入力ストリームを再度代入します。

 o setOut
  public static void setOut(PrintStream out)
" 標準 " 出力ストリームを再度代入します。

 o setErr
  public static void setErr(PrintStream err)
" 標準 " エラー出力ストリームを再度代入します。

 o setSecurityManager
  public static void setSecurityManager(SecurityManager s)
システムセキュリティを設定します。 Java アプリケーションが現在実行するようにセキュリティマネージャを既に設定してある場合は、 SecurityException をスローします。そうでない場合は、引数を現在のセキュリティマネージャに設定します。引数が null であり、セキュリティマネージャが設定されていない場合は、何も処理しません。

パラメータ:
s - セキュリティマネージャ
例外: SecurityException
セキュリティマネージャが既に設定してある場合
 o getSecurityManager
  public static SecurityManager getSecurityManager()
システムセキュリティインターフェースを取得します。

返り値 :
セキュリティマネージャが既に現在のアプリケーションに設定されている場合、セキュリティマネージャを返し、そうでない場合は null を返す。
 o currentTimeMillis
  public static native long currentTimeMillis()
ミリ秒で表される現在の時間を返します。

" コンピュータ時間 " と協定世界時間 (UTC) との間に発生する微妙な食い違いについてはクラス Date の説明を参照して下さい。

返り値 :
ミリ秒で測定した、現在時間と UTC 1970年1月1日深夜との差
参照:
Date
 o arraycopy
  public static native void arraycopy(Object src,
                               int src_position,
                               Object dst,
                               int dst_position,
                               int length)
指定位置で開始する指定ソース配列から転送先配列の指定位置に配列をコピーします。配列コンポーネントのサブシーケンスを、src によって参照されるソース配列から dst によって参照される転送先配列にコピーします。コピーされるコンポーネントの数は、引数 length と一致します。ソース配列の srcOffset から srcOffset+length-1 までの位置にあるコンポーネントを、転送先の配列の dstOffset から dstOffset+length-1 までの位置にそれぞれコピーします。

引数 src および dst が同じ配列オブジェクトである場合、まず srcOffset から srcOffset+length-1 までの位置にあるコンポーネントをテンポラリ配列 length のコンポーネントにコピーし、次にテンポラリ配列の内容を引数配列の dstOffset から dstOffset+length-1 にコピーを実行します。

下記のいずれが true の場合、 ArrayStoreException をスローし、転送先を修正しません。

そうでない場合、下記のいずれかが true であるなら ArrayIndexOutOfBoundsException をスローし、転送先を修正しません。

そうでない場合、srcOffset から srcOffset+length-1 までの位置にあるソース配列の実際のコンポーネントが、代入変換によって転送先配列のコンポーネント型に変換できない時、 ArrayStoreException を返します。この場合、 k を長さよりも少なく負の数でない最少整数型にして、 src[srcOffset+k] が転送先配列のコンポーネント型に変換できないようにします。例外をスローする場合は、 srcOffset から srcOffset+k-1 に位置するソース配列のコンポーネントは既に dstOffset から dstOffset+k-1 に位置する転送先配列にコピーされています。また、転送先のその他の位置は修正されていません。

パラメータ:
src: - 元の配列
srcpos - ソース配列の開始位置
dest - 転送先配列
destpos - 転送先配列の開始位置
length - コピーされる配列要素の数
例外: ArrayIndexOutOfBoundsException
コピーによって配列の境界を越えてデータがアクセスした場合
例外: ArrayStoreException
型の不一致により、配列 src の要素が配列 dest に保存できなかった場合
 o identityHashCode
  public static native int identityHashCode(Object x)
所定オブジェクトのクラスが hashCode() をオーバーライドするかどうかに関係なく、デフォルトメソッドにより返されるものと同じ所定オブジェクトの hashcode を返します。 参照nullの hashcode はゼロです。

 o getProperties
  public static Properties getProperties()
現在のシステムプロパティを決定します。

セキュリティマネージャがある場合、メソッド checkPropertiesAccess を引数を用いることなく呼び出します。これはセキュリティの例外を引き起こすことがあります。

システムプロパティの現在の設定を、 Properties オブジェクトとして返します。システムプロパティの現在の設定がない場合、システムプロパティの設定をまず作成して、初期化します。

システムプロパティのこの設定には常に以下のキーの値があります。
キー 関連する値の説明
java.version Java のバージョンナンバー
java.vendor Java のベンダー特定の文字列
java.vendor.url Java のベンダー URL
java.home Java のインストール先ディレクトリ
java.class.version Java のクラスのフォーマットバージョンナンバー
java.class.path Java のクラスのパス
os.name OS 名
os.arch OS アーキテクチャ
os.version OS バージョン
file.separator ファイル分離文字 (UNIX では "/")
path.separator パス分離文字 (UNIX では ":")
line.separator ライン分離文字 (UNIXでは "\n")
user.name ユーザアカウント名
user.home ユーザホームディレクトリ
user.dir ユーザの現在の作業ディレクトリ

例外: SecurityException
現在のスレッドがシステムプロパティにアクセスできない場合
参照:
SecurityException, checkPropertiesAccess, Properties
 o setProperties
  public static void setProperties(Properties props)
システムプロパティを引数 Properties に設定します。

まず、セキュリティマネージャがある場合、引数を用いることなくメソッド checkPropertiesAccess を呼び出します。これによってセキュリティ例外となります。

引数は、メソッド getProperty により、使用するシステムプロパティの現在の設定となります。引数が null である場合、システムプロパティの現在の設定を忘れます。

パラメータ:
props - 新しいシステムプロパティ
例外: SecurityException
現在のスレッドがシステムプロパティを設定できない場合
参照:
SecurityException, checkPropertiesAccess
 o getProperty
  public static String getProperty(String key)
指定されたキーによって示されるシステムプロパティを取得します。

セキュリティマネージャがある場合、キーを用いてメソッド checkPropertyAccess をその引数として呼び出します。これによりシステムの例外となることがあります。

システムプロパティの現在の設定がない場合、システムプロパティの設定をまず作成して、メソッド getProperties と同じ方法により初期化します。

パラメータ:
key - システムプロパティ名
返り値 :
システムプロパティの文字列の値、そのキーにプロパティがない場合はnull
例外: SecurityException
現在のスレッドがシステムプロパティまたは指定されたプロパティにアクセスできない場合
参照:
SecurityException, checkPropertyAccess, getProperties
 o getProperty
  public static String getProperty(String key,
                                   String def)
指定されたキーによって示されるシステムプロパティを取得します。

セキュリティマネージャがある場合、key を用いてメソッド checkPropertyAccess をその引数として呼び出します。

システムプロパティの現在の設定がない場合、システムの設定をまず作成し、メソッド getProperties と同じ方法で初期化します。

パラメータ:
key - システムプロパティ名
def - デフォルト値
返り値 :
システムプロパティの文字列の値、そのキーにプロパティがない場合はデフォルト値
例外: SecurityException
現在のスレッドがシステムプロパティまたは指定されたプロパティにアクセスできない場合
参照:
checkPropertyAccess, getProperties
 o getenv
  public static String getenv(String name)
注意 : getenv() は推奨されません。 システム依存情報を抽出する好ましい方法は、 java.lang.System.getProperty メソッドおよび BooleanIntegerLong プリミティブ型の対応する getTypeName メソッドのシステムプロパティです。

例えば、

     String classPath = System.getProperty("java.class.path",".");
 
if (Boolean.getBoolean("myapp.exper.mode")) enableExpertCommands();

環境変数を取得します。環境変数はシステム依存の外部変数であり、文字列を持っています。

パラメータ:
the - 環境変数名
返り値 :
変数の値、変数を定義しない場合は null
参照:
getBoolean, getInteger, getInteger, getInteger, getLong, getLong, getLong, getProperties, getProperty, getProperty
 o exit
  public static void exit(int status)
現在実行している Java 仮想マシンを終了します。引数はステータスコードとして作用します ; 規定により nonzero ステータスコードは異常終了を示します。

このメソッドはクラス Runtime のメソッド exit を呼び出します。このメソッドは決して正常には返りません。

パラメータ:
status - 終了のステータス
例外: SecurityException
現在のスレッドが指定されたステータスで終了しない場合
参照:
exit
 o gc
  public static void gc()
ガベージコレクターを実行します。

メソッド gc の呼び出しは、現在占有しているメモリを再度迅速に利用するために、 Java の仮想マシンが使用しないオブジェクトのリサイクルを実行することを意味します。controlがメソッド呼び出しから返る場合、Java の仮想マシンは使用しないオブジェクトすべてからスペースを再生するよう最大限努力します。

参照:
gc
 o runFinalization
  public static void runFinalization()
ファイナライズ待ちのオブジェクトのファイナライズメソッドを実行します。

このメソッドの呼び出しは、 Java の仮想マシンが、廃棄されていることが判っていてメソッド finalize が実行されていないオブジェクトのメソッド finalize を実行を試みることを意味します。 control がメソッド呼び出しから返る場合、Java の仮想マシンは未処理のファイナライズのすべてを実行するよう試みます。

参照:
runFinalization
 o runFinalizersOnExit
  public static void runFinalizersOnExit(boolean value)
終了時のファイナライズを可能または不可能にします。これを実行することによって、自動的に呼び出されていないファイナライザをもつオブジェクトすべてのファイナライザが呼び出され、Java 終了前に実行されるようになります。

参照:
exit, gc
 o load
  public static void load(String filename)
指定されたファイル名をダイナミックライブラリとしてロードします。ファイル名引数は完全なパス名である必要があります。

このメソッドはクラス Runtime のメソッドload を呼び出します。

パラメータ:
filename - ロードするファイル
例外: SecurityException
現在のスレッドが指定されるダイナミックライブラリをロードできない場合
例外: UnsatisfiedLinkError
ファイルが存在しない場合
参照:
load
 o loadLibrary
  public static void loadLibrary(String libname)
引数 libname によって指定されるシステムライブラリをロードします。ライブラリ名が実際のシステムライブラリにマップされる方法はシステムによって異なります。

パラメータ:
libname - ライブラリ名
例外: SecurityException
現在のスレッドが指定されるダイナミックライブラリをロードできない場合
例外: UnsatisfiedLinkError
ライブラリが存在しない場合
参照:
loadLibrary

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス