|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.lang.System
System
クラスには有用なクラスフィールドおよびメソッドがあります。インスタンスを生成することはできません。
System
クラスによって得られる機能には、標準入力、標準出力、およびエラー出力ストリーム、外部的に定義された「プロパティ」へのアクセス、ファイルおよびライブラリのローディング方法、配列の一部をすばやくコピーするユーティリティメソッドがあります。
フィールドの概要 | |
static PrintStream |
err
「標準」エラー出力ストリームです。 |
static InputStream |
in
「標準」入力ストリームです。 |
static PrintStream |
out
「標準」出力ストリームです。 |
メソッドの概要 | |
static void |
arraycopy(Object src,
int src_position,
Object dst,
int dst_position,
int length)
指定位置で開始する指定ソース配列から、転送先配列の指定位置に配列をコピーします。 |
static long |
currentTimeMillis()
ミリ秒で表される現在の時間を返します。 |
static void |
exit(int status)
現在実行している Java Virtual Machine を終了します。 |
static void |
gc()
ガベージコレクタを実行します。 |
static String |
getenv(String name)
推奨されていません。 システム固有の情報を抽出するには、次のように、システムプロパティの java.lang.System.getProperty メソッドおよび対応するプリミティブ型 Boolean 、Integer 、および Long の get TypeName メソッドを使用することが推奨されます。
String classPath = System.getProperty("java.class.path","."); |
static Properties |
getProperties()
現在のシステムプロパティを決定します。 |
static String |
getProperty(String key)
指定されたキーによって示されるシステムプロパティを取得します。 |
static String |
getProperty(String key,
String def)
指定されたキーによって示されるシステムプロパティを取得します。 |
static SecurityManager |
getSecurityManager()
システムセキュリティインタフェースを取得します。 |
static int |
identityHashCode(Object x)
指定されたオブジェクトのクラスが hashCode() をオーバーライドしているかどうかに関係なく、デフォルトの hashCode() メソッドにより返されるものと同じ、指定されたオブジェクトのハッシュコードを返します。 |
static void |
load(String filename)
指定されたファイル名を持つコードファイルを、ダイナミックライブラリとしてローカルファイルシステムからロードします。 |
static void |
loadLibrary(String libname)
引数 libname によって指定されるシステムライブラリをロードします。 |
static String |
mapLibraryName(String libname)
ライブラリ名を、ネイティブライブラリを表すプラットフォーム依存の文字列にマッピングします。 |
static void |
runFinalization()
ファイナライズを保留しているオブジェクトのファイナライズメソッドを実行します。 |
static void |
runFinalizersOnExit(boolean value)
推奨されていません。 このメソッドは本質的に安全ではありません。ほかのスレッドが同時にそれらのオブジェクトを操作しているときに、生存中のオブジェクトに対してファイナライザが呼び出され、これにより、エラー動作またはデッドロックが発生します。 |
static void |
setErr(PrintStream err)
「標準」エラー出力ストリームを割り当てし直します。 |
static void |
setIn(InputStream in)
「標準」入力ストリームを割り当てし直します。 |
static void |
setOut(PrintStream out)
「標準」出力ストリームを割り当てし直します。 |
static void |
setProperties(Properties props)
システムプロパティを引数 Properties に設定します。
|
static String |
setProperty(String key,
String value)
指定されたキーによって示されるシステムプロパティを設定します。 |
static void |
setSecurityManager(SecurityManager s)
システムセキュリティを設定します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
public static final InputStream in
public static final PrintStream out
単純なスタンドアロンの Java アプリケーションにおいて、出力データの行を書き込む一般的な方法は以下のとおりです。
System.out.println(data)
PrintStream
クラスの println
メソッドを参照してください。
PrintStream.println()
,
PrintStream.println(boolean)
,
PrintStream.println(char)
,
PrintStream.println(char[])
,
PrintStream.println(double)
,
PrintStream.println(float)
,
PrintStream.println(int)
,
PrintStream.println(long)
,
PrintStream.println(java.lang.Object)
,
PrintStream.println(java.lang.String)
public static final PrintStream err
通常、このストリームはディスプレイ出力、またはホスト環境やユーザによって指定される出力先の出力と一致します。主な出力ストリームである変数 out
値が、一般的に継続的には監視されていないファイルまたはその他の転送先にリダイレクトしている場合でも、ユーザに注意を促すためのエラーメッセージまたはその他の情報を表示するために、通例この出力ストリームが使用されます。
メソッドの詳細 |
public static void setIn(InputStream in)
セキュリティマネージャが存在する場合は、標準入力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO")
アクセス権を使って checkPermission
メソッドが呼び出されます。
in
- 新しい標準入力ストリームSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPermission
メソッドが標準入力ストリームの再割り当てを許可しない場合SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public static void setOut(PrintStream out)
セキュリティマネージャが存在する場合は、標準出力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO")
アクセス権を使って checkPermission
メソッドが呼び出されます。
out
- 新しい標準出力ストリームSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPermission
メソッドが標準出力ストリームの再割り当てを許可しない場合SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public static void setErr(PrintStream err)
セキュリティマネージャが存在する場合は、標準エラー出力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO")
アクセス権を使って checkPermission
メソッドが呼び出されます。
err
- 新しい標準エラー出力ストリームSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPermission
メソッドが標準エラー出力ストリームの再割り当てを許可しない場合SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public static void setSecurityManager(SecurityManager s)
セキュリティマネージャがすでにインストールされている場合、このメソッドは、最初に RuntimePermission("setSecurityManager")
アクセス権を使ってセキュリティマネージャの checkPermission
メソッドを呼び出すことにより、既存のセキュリティマネージャを置換してもよいかどうかを確認します。この結果、SecurityException
がスローされることがあります。
そうでない場合は、引数を現在のセキュリティマネージャに設定します。引数が null
であり、セキュリティマネージャが設定されていない場合、メソッドは何も行わずに復帰します。
s
- セキュリティマネージャSecurityException
- セキュリティマネージャがすでに設定されており、セキュリティマネージャの checkPermission
メソッドがセキュリティマネージャの置換を許可しない場合getSecurityManager()
,
SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public static SecurityManager getSecurityManager()
null
setSecurityManager(java.lang.SecurityManager)
public static long currentTimeMillis()
「コンピュータ時間」と協定世界時 (UTC) との間に発生する微妙な相違については、クラス Date
の説明を参照してください。
Date
public static void arraycopy(Object src, int src_position, Object dst, int dst_position, int length)
src
によって参照されるソース配列から dst
によって参照される転送先配列にコピーします。コピーされる要素の数は、引数 length
と一致します。ソース配列の src_position
から src_position+length-1
までの位置にある要素を、転送先の配列の dst_position
から dst_position+length-1
までの位置にそれぞれコピーします。
引数 src
および dst
が同じ配列オブジェクトである場合、まず src_position
から src_position+length-1
までの位置にある要素を一時配列 length
の要素にコピーし、次に一時配列の内容を転送先配列の dst_position
から dst_position+length-1
にコピーします。
dst
が null
の場合は、NullPointerException
がスローされます。
src
が null
の場合は、NullPointerException
がスローされ、転送先配列は変更されません。
以下のどれかの場合は、ArrayStoreException
をスローし、転送先を修正しません。
src
が、配列でないオブジェクトである
dst
が、配列でないオブジェクトである
src
および引数 dst
が、要素の種類が異なるプリミティブ型の配列である
src
がプリミティブな要素型を持つ配列であり、引数 dst
が参照要素型を持つ配列である
src
が参照要素型を持つ配列であり、引数 dst
がプリミティブな要素型を持つ配列である
そうでない場合、以下のどれかが true であれば IndexOutOfBoundsException
をスローし、転送先を修正しません。
srcOffset
が負の値である
dstOffset
が負の値である
length
が負の値である
srcOffset+length
がソース配列の長さ src.length
より大きい
dstOffset+length
が転送先配列の長さ dst.length
より大きい
そうでない場合、src_position
から src_position+length-1
までの位置にあるソース配列の実際の要素が、代入変換によって転送先配列の要素型に変換できないときは、ArrayStoreException
をスローします。この場合、k を長さよりも小さく、負の数でない最小整数型にして、src[src_position+k]
を転送先配列の要素型に変換できないようにします。例外をスローする場合、src_position
から src_position+k-1
に位置するソース配列の要素はすでに dst_positin
から dst_position+k-1
に位置する転送先配列にコピーされています。また、転送先配列のその他の位置は修正されていません。前述の制約のため、上記の記述は実際には両方の配列が参照型の要素型を持つ状況でのみ有効です。
src
- ソース配列src_position
- ソース配列の開始位置dst
- 転送先配列dst_position
- 転送先配列の開始位置length
- コピーされる配列要素の数IndexOutOfBoundsException
- コピーによって配列の境界を越えたデータのアクセスが生じた場合ArrayStoreException
- 型の不一致により、配列 src
の要素が配列 dest
に保存できなかった場合NullPointerException
- src
または dst
が null
の場合public static int identityHashCode(Object x)
x
- ハッシュコードが計算されるオブジェクトpublic static Properties getProperties()
まず、セキュリティマネージャが存在する場合は、引数なしでメソッド checkPropertiesAccess
を呼び出します。これはセキュリティ例外となる場合があります。
getProperty(String)
メソッドによって、現在使用しているシステムプロパティのセットが Properties
オブジェクトとして返されます。現在のシステムプロパティのセットがない場合は、システムプロパティのセットを作成したあとで初期化します。このシステムプロパティのセットには、必ず以下のキーに対応する値が含まれます。
キー | 対応する値の説明 |
---|---|
java.version |
Java Runtime Environment のバージョン |
java.vendor |
Java Runtime Environment のベンダー |
java.vendor.url |
Java ベンダーの URL |
java.home |
Java のインストール先ディレクトリ |
java.vm.specification.version |
Java Virtual Machine の仕様バージョン |
java.vm.specification.vendor |
Java Virtual Machine の仕様のベンダー |
java.vm.specification.name |
Java Virtual Machine の仕様名 |
java.vm.version |
Java Virtual Machine の実装バージョン |
java.vm.vendor |
Java Virtual Machine の実装のベンダー |
java.vm.name |
Java Virtual Machine の実装名 |
java.specification.version |
Java Runtime Environment の仕様バージョン |
java.specification.vendor |
Java Runtime Environment の仕様のベンダー |
java.specification.name |
Java Runtime Environment の仕様名 |
java.class.version |
Java クラスの形式のバージョン番号 |
java.class.path |
Java クラスパス |
java.ext.dirs |
拡張ディレクトリのパス |
os.name |
オペレーティングシステム名 |
os.arch |
オペレーティングシステムのアーキテクチャ |
os.version |
オペレーティングシステムのバージョン |
file.separator |
ファイル区切り文字 (UNIX では "/") |
path.separator |
パス区切り文字 (UNIX では ":") |
line.separator |
行区切り文字 (UNIX では "\n") |
user.name |
ユーザのアカウント名 |
user.home |
ユーザのホームディレクトリ |
user.dir |
ユーザの現在の作業ディレクトリ |
セキュリティマネージャは、getProperties
オペレーションを許可しない場合でも、getProperty(String)
オペレーションを許可する場合があります。
SecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess
メソッドがシステムプロパティへのアクセスを許可しない場合setProperties(java.util.Properties)
,
SecurityException
,
SecurityManager.checkPropertiesAccess()
,
Properties
public static void setProperties(Properties props)
Properties
に設定します。
まず、セキュリティマネージャが存在する場合は、引数なしでメソッド checkPropertiesAccess
を呼び出します。これはセキュリティ例外となる場合があります。
引数は、メソッド getProperty(String)
により、使用するシステムプロパティの現在のセットとなります。引数が null
の場合、システムプロパティの現在のセットはをそのままです。
props
- 新しいシステムプロパティSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess
メソッドがシステムプロパティへのアクセスを許可しない場合getProperties()
,
Properties
,
SecurityException
,
SecurityManager.checkPropertiesAccess()
public static String getProperty(String key)
セキュリティマネージャが存在する場合は、キーを引数として渡して checkPropertyAccess
メソッドを呼び出します。その結果、SecurityException がスローされることがあります。
システムプロパティの現在のセットがない場合、システムプロパティのセットをまず作成し、getProperties
メソッドと同じ方法で初期化します。
key
- システムプロパティの名前null
SecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess
メソッドが、指定されたシステムプロパティへのアクセスを許可しない場合NullPointerException
- key
が null
の場合IllegalArgumentException
- key
が空の場合setProperty(java.lang.String, java.lang.String)
,
SecurityException
,
SecurityManager.checkPropertyAccess(java.lang.String)
,
getProperties()
public static String getProperty(String key, String def)
セキュリティマネージャが存在する場合は、key
を引数として渡して checkPropertyAccess
メソッドを呼び出します。
システムプロパティの現在のセットがない場合、システムプロパティのセットをまず作成し、getProperties
メソッドと同じ方法で初期化します。
key
- システムプロパティの名前def
- デフォルト値SecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess
メソッドが、指定されたシステムプロパティへのアクセスを許可しない場合NullPointerException
- key
が null
の場合IllegalArgumentException
- key
が空の場合setProperty(java.lang.String, java.lang.String)
,
SecurityManager.checkPropertyAccess(java.lang.String)
,
getProperties()
public static String setProperty(String key, String value)
セキュリティマネージャが存在する場合は、PropertyPermission(key, "write")
アクセス権を使って SecurityManager.checkPermission
メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。例外がスローされなかった場合は、指定されたプロパティが指定された値に設定されます。
key
- システムプロパティの名前value
- システムプロパティの値null
SecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkPermission
メソッドが、指定されたプロパティの設定を許可しない場合NullPointerException
- key
が null
の場合IllegalArgumentException
- key
が空の場合getProperty(java.lang.String)
,
getProperty(java.lang.String)
,
getProperty(java.lang.String, java.lang.String)
,
PropertyPermission
,
SecurityManager.checkPermission(java.security.Permission)
public static String getenv(String name)
java.lang.System.getProperty
メソッドおよび対応するプリミティブ型 Boolean
、Integer
、および Long
の get
TypeName メソッドを使用することが推奨されます。
String classPath = System.getProperty("java.class.path",".");
if (Boolean.getBoolean("myapp.exper.mode")) enableExpertCommands();
name
- 環境変数の名前null
Boolean.getBoolean(java.lang.String)
,
Integer.getInteger(java.lang.String)
,
Integer.getInteger(java.lang.String, int)
,
Integer.getInteger(java.lang.String, java.lang.Integer)
,
Long.getLong(java.lang.String)
,
Long.getLong(java.lang.String, long)
,
Long.getLong(java.lang.String, java.lang.Long)
,
getProperties()
,
getProperty(java.lang.String)
,
getProperty(java.lang.String, java.lang.String)
public static void exit(int status)
このメソッドは Runtime
クラスの exit
メソッドを呼び出します。このメソッドは、正常に復帰することはありません。
System.exit(n)
の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().exit(n)
status
- 終了のステータスSecurityException
- セキュリティマネージャが存在し、その checkExit
メソッドが、指定されたステータスでの終了を許可しない場合Runtime.exit(int)
public static void gc()
gc
メソッドの呼び出しは、現在占有しているメモリを再度迅速に利用するために、Java Virtual Machine が使用しないオブジェクトのリサイクルを実行することを意味します。メソッドの呼び出しから制御が戻るのは、Java Virtual Machine が、破棄されたオブジェクトが占有していたスペースを最大限まで回復し終えたときです。
System.gc()
の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().gc()
Runtime.gc()
public static void runFinalization()
このメソッドを呼び出すと、Java Virtual Machine が、破棄されていることがわかっていて finalize
メソッドが実行されていないオブジェクトに対して finalize
メソッドの実行が試行されます。メソッドの呼び出しから制御が戻るのは、Java Virtual Machine が、すべての未処理のファイナライズを最大限まで完了し終えたときです。
System.runFinalization()
の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().runFinalization()
Runtime.runFinalization()
public static void runFinalizersOnExit(boolean value)
セキュリティマネージャが存在する場合は、確実に終了が許可されるように、最初に引数を 0 として checkExit
メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。
value
- ファイナライズを有効にするか無効にするかを示すSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkExit
メソッドが終了を許可しない場合Runtime.exit(int)
,
Runtime.gc()
,
SecurityManager.checkExit(int)
public static void load(String filename)
System.load(name)
の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().load(name)
filename
- ロードするファイルSecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkLink
メソッドが、指定されたダイナミックライブラリのロードを許可しない場合UnsatisfiedLinkError
- ファイルが存在しない場合Runtime.load(java.lang.String)
,
SecurityManager.checkLink(java.lang.String)
public static void loadLibrary(String libname)
libname
によって指定されるシステムライブラリをロードします。ライブラリ名が実際のシステムライブラリにマッピングされる方法は、システムによって異なります。
System.loadLibrary(name)
の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().loadLibrary(name)
libname
- ライブラリの名前SecurityException
- セキュリティマネージャが存在し、セキュリティマネージャの checkLink
メソッドが、指定されたダイナミックライブラリのロードを許可しない場合UnsatisfiedLinkError
- ライブラリが存在しない場合Runtime.loadLibrary(java.lang.String)
,
SecurityManager.checkLink(java.lang.String)
public static String mapLibraryName(String libname)
libname
- ライブラリの名前loadLibrary(java.lang.String)
,
ClassLoader.findLibrary(java.lang.String)
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.