JavaTM 2 Platform
Standard Ed. 5.0

java.lang
クラス System

java.lang.Object
  上位を拡張 java.lang.System

public final class System
extends Object

System クラスには有用なクラスフィールドおよびメソッドがあります。インスタンス化することはできません。

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

導入されたバージョン:
JDK1.0

フィールドの概要
static PrintStream err
          「標準」エラー出力ストリームです。
static InputStream in
          「標準」入力ストリームです。
static PrintStream out
          「標準」出力ストリームです。
 
メソッドの概要
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
          指定位置で開始する指定ソース配列から、転送先配列の指定位置に配列をコピーします。
static String clearProperty(String key)
          指定されたキーによって示されたシステムプロパティを削除します。
static long currentTimeMillis()
          現在の時間をミリ秒で返します。
static void exit(int status)
          現在実行している Java 仮想マシンを終了します。
static void gc()
          ガベージコレクタを実行します。
static Map<String,String> getenv()
          現在のシステム環境の変更できない文字列マップのビューを返します。
static String getenv(String name)
          指定された環境変数の値を取得します。
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 Channel inheritedChannel()
          Java 仮想マシンを作成したエンティティから継承されたチャネルを返します。
static void load(String filename)
          指定されたファイル名を持つコードファイルを、ダイナミックライブラリとしてローカルファイルシステムからロードします。
static void loadLibrary(String libname)
          引数 libname によって指定されるシステムライブラリをロードします。
static String mapLibraryName(String libname)
          ライブラリ名を、ネイティブライブラリを表すプラットフォーム依存の文字列にマッピングします。
static long nanoTime()
          利用可能でもっとも正確なシステムタイマーの現在の値をナノ秒単位で返します。
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
 

フィールドの詳細

in

public static final InputStream in
「標準」入力ストリームです。このストリームはすでに開いていて、入力データの供給が可能です。通常、このストリームはキーボード入力、またはホスト環境やユーザによって指定されるその他の入力ソースと一致しています。


out

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)

err

public static final PrintStream err
「標準」エラー出力ストリームです。このストリームはすでに開いていて、出力データの受け取りが可能です。

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

メソッドの詳細

setIn

public static void setIn(InputStream in)
「標準」入力ストリームを割り当てし直します。

セキュリティマネージャが存在する場合は、標準入力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO") アクセス権を使って checkPermission メソッドが呼び出されます。

パラメータ:
in - 新しい標準入力ストリーム
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPermission メソッドが標準入力ストリームの再割り当てを許可しない場合
導入されたバージョン:
JDK1.1
関連項目:
SecurityManager.checkPermission(java.security.Permission), RuntimePermission

setOut

public static void setOut(PrintStream out)
「標準」出力ストリームを割り当てし直します。

セキュリティマネージャが存在する場合は、標準出力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO") アクセス権を使って checkPermission メソッドが呼び出されます。

パラメータ:
out - 新しい標準出力ストリーム
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPermission メソッドが標準出力ストリームの再割り当てを許可しない場合
導入されたバージョン:
JDK1.1
関連項目:
SecurityManager.checkPermission(java.security.Permission), RuntimePermission

setErr

public static void setErr(PrintStream err)
「標準」エラー出力ストリームを割り当てし直します。

セキュリティマネージャが存在する場合は、標準エラー出力ストリームを割り当てし直してよいかどうかを確認するために、RuntimePermission("setIO") アクセス権を使って checkPermission メソッドが呼び出されます。

パラメータ:
err - 新しい標準エラー出力ストリーム
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPermission メソッドが標準エラー出力ストリームの再割り当てを許可しない場合
導入されたバージョン:
JDK1.1
関連項目:
SecurityManager.checkPermission(java.security.Permission), RuntimePermission

inheritedChannel

public static Channel inheritedChannel()
                                throws IOException
Java 仮想マシンを作成したエンティティから継承されたチャネルを返します。

このメソッドは、システム全体のデフォルトの SelectorProvider オブジェクトの inheritedChannel メソッドを呼び出すことによって取得したチャンネルを返します。

このメソッドは、inheritedChannel で定義されているネットワーク指向のチャネルに加えて、将来ほかの種類のチャネルを返す可能性があります。

戻り値:
継承されたチャネル (存在する場合)。そうでない場合は null
例外:
IOException - 入出力エラーが発生した場合
SecurityException - セキュリティマネージャがインストールされていて、チャネルへのアクセスが許可されていない場合
導入されたバージョン:
1.5

setSecurityManager

public static void setSecurityManager(SecurityManager s)
システムセキュリティを設定します。

セキュリティマネージャがすでにインストールされている場合、このメソッドは、最初に RuntimePermission("setSecurityManager") アクセス権を使ってセキュリティマネージャの checkPermission メソッドを呼び出すことにより、既存のセキュリティマネージャを置換してもよいかどうかを確認します。この結果、SecurityException がスローされることがあります。

そうでない場合は、引数を現在のセキュリティマネージャに設定します。引数が null であり、セキュリティマネージャが設定されていない場合、メソッドは何も行わずに復帰します。

パラメータ:
s - セキュリティマネージャ
例外:
SecurityException - セキュリティマネージャがすでに設定されており、セキュリティマネージャの checkPermission メソッドがセキュリティマネージャの置換を許可しない場合
関連項目:
getSecurityManager(), SecurityManager.checkPermission(java.security.Permission), RuntimePermission

getSecurityManager

public static SecurityManager getSecurityManager()
システムセキュリティインタフェースを取得します。

戻り値:
セキュリティマネージャがすでに現在のアプリケーションに設定されている場合は、セキュリティマネージャ。そうでない場合は null
関連項目:
setSecurityManager(java.lang.SecurityManager)

currentTimeMillis

public static long currentTimeMillis()
現在の時間をミリ秒で返します。戻り値の時間単位はミリ秒ですが、値の粒度は基本となるオペレーティングシステムによって異なり、単位がより大きくなる場合があります。たとえば、多くのオペレーティングシステムでは、時間を 10 ミリ秒の単位で計測します。

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

戻り値:
ミリ秒で測定した、現在時刻と協定世界時の UTC 1970 年 1 月 1 日午前 0 時との差
関連項目:
Date

nanoTime

public static long nanoTime()
利用可能でもっとも正確なシステムタイマーの現在の値をナノ秒単位で返します。

このメソッドは、経過時間を測定するためだけに使用できます。システムのほかの概念や壁時計の時刻に関連していません。返される値は、ある決まった任意の時刻 (将来の時間、負の値もあり得る) からのナノ秒単位の時間を表します。このメソッドは、ナノ秒単位の精度を提供しますが、必ずしもナノ秒の正確度ではありません。どの程度値が変化するかは保証されません。約 292 年 (263 ナノ秒 ) を超える連続した呼び出しの差異では、数値のオーバーフローにより経過時間が正しく計算されません。

たとえば、一部のコードで実行にかかる時間を測定するには、次のようになります。


   long startTime = System.nanoTime();
   // ... the code being measured ...
   long estimatedTime = System.nanoTime() - startTime;
 

戻り値:
システムタイマーの現在の値 (ナノ秒単位)
導入されたバージョン:
1.5

arraycopy

public static void arraycopy(Object src,
                             int srcPos,
                             Object dest,
                             int destPos,
                             int length)
指定位置で開始する指定ソース配列から、転送先配列の指定位置に配列をコピーします。配列要素のサブシーケンスを、src によって参照されるソース配列から dest によって参照される転送先配列にコピーします。コピーされる要素の数は、引数 length と一致します。ソース配列の srcPos から srcPos+length-1 までの位置にある要素を、転送先の配列の destPos から destPos+length-1 までの位置にそれぞれコピーします。

引数 src および dest が同じ配列オブジェクトである場合、まず srcPos から srcPos+length-1 までの位置にある要素を一時配列 length の要素にコピーし、次に一時配列の内容を転送先配列の destPos から destPos+length-1 にコピーします。

destnull の場合は、NullPointerException がスローされます。

srcnull の場合は、NullPointerException がスローされ、転送先配列は変更されません。

以下のどれかに当てはまる場合は、ArrayStoreException をスローし、転送先を修正しません。

そうでない場合、以下のどれかに当てはまれば、IndexOutOfBoundsException をスローし、転送先を修正しません。

そうでない場合、srcPos から srcPos+length-1 までの位置にあるソース配列の実際の要素が、代入変換によって転送先配列の要素型に変換できないときは、ArrayStoreException をスローします。この場合、k を長さよりも小さく、負の数でない最小整数型にして、src[srcPos+k] を転送先配列の要素型に変換できないようにします。例外をスローする場合、srcPos から srcPos+k-1 に位置するソース配列の要素はすでに destPos から destPos+k-1 に位置する転送先配列にコピーされています。また、転送先配列のその他の位置は修正されていません。前述の制約のため、上記の記述は実際には両方の配列が参照型の要素型を持つ状況でだけ有効です。

パラメータ:
src - ソース配列
srcPos - ソース配列の開始位置
dest - 転送先配列
destPos - 転送先データ内の開始位置
length - コピーされる配列要素の数
例外:
IndexOutOfBoundsException - コピーによって配列の境界を越えたデータのアクセスが生じた場合
ArrayStoreException - 型の不一致により、配列 src の要素が配列 dest に保存できなかった場合
NullPointerException - src または destnull の場合

identityHashCode

public static int identityHashCode(Object x)
指定されたオブジェクトのクラスが hashCode() をオーバーライドしているかどうかに関係なく、デフォルトの hashCode() メソッドにより返されるものと同じ、指定されたオブジェクトのハッシュコードを返します。参照 null のハッシュコードはゼロです。

パラメータ:
x - ハッシュコードが計算されるオブジェクト
戻り値:
ハッシュコード
導入されたバージョン:
JDK1.1

getProperties

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 仮想マシンの仕様バージョン
java.vm.specification.vendor Java 仮想マシンの仕様ベンダー
java.vm.specification.name Java 仮想マシンの仕様名
java.vm.version Java 仮想マシンの実装バージョン
java.vm.vendor Java 仮想マシンの実装ベンダー
java.vm.name Java 仮想マシンの実装名
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.library.path ライブラリのロード時に検索するパスのリスト
java.io.tmpdir デフォルト一時ファイルのパス
java.compiler 使用する JIT コンパイラの名前
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

setProperties

public static void setProperties(Properties props)
システムプロパティを引数 Properties に設定します。

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

引数は、メソッド getProperty(String) により、使用するシステムプロパティの現在のセットとなります。引数が null の場合、システムプロパティの現在のセットはそのままです。

パラメータ:
props - 新しいシステムプロパティ
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess メソッドがシステムプロパティへのアクセスを許可しない場合
関連項目:
getProperties(), Properties, SecurityException, SecurityManager.checkPropertiesAccess()

getProperty

public static String getProperty(String key)
指定されたキーによって示されるシステムプロパティを取得します。

セキュリティマネージャが存在する場合は、キーを引数として渡して checkPropertyAccess メソッドを呼び出します。その結果、SecurityException がスローされることがあります。

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

パラメータ:
key - システムプロパティの名前
戻り値:
システムプロパティの文字列値。そのキーにプロパティがない場合は null
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess メソッドが、指定されたシステムプロパティへのアクセスを許可しない場合
NullPointerException - keynull の場合
IllegalArgumentException - key が空の場合
関連項目:
setProperty(java.lang.String, java.lang.String), SecurityException, SecurityManager.checkPropertyAccess(java.lang.String), getProperties()

getProperty

public static String getProperty(String key,
                                 String def)
指定されたキーによって示されるシステムプロパティを取得します。

セキュリティマネージャが存在する場合は、key を引数として渡して checkPropertyAccess メソッドを呼び出します。

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

パラメータ:
key - システムプロパティの名前
def - デフォルト値
戻り値:
システムプロパティの文字列値。そのキーにプロパティがない場合はデフォルト値
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess メソッドが、指定されたシステムプロパティへのアクセスを許可しない場合
NullPointerException - keynull の場合
IllegalArgumentException - key が空の場合
関連項目:
setProperty(java.lang.String, java.lang.String), SecurityManager.checkPropertyAccess(java.lang.String), getProperties()

setProperty

public static String setProperty(String key,
                                 String value)
指定されたキーによって示されるシステムプロパティを設定します。

セキュリティマネージャが存在する場合は、PropertyPermission(key, "write") アクセス権を使って SecurityManager.checkPermission メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。例外がスローされなかった場合は、指定されたプロパティが指定された値に設定されます。

パラメータ:
key - システムプロパティの名前
value - システムプロパティの値
戻り値:
システムプロパティの以前の値。ない場合は null
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPermission メソッドが、指定されたプロパティの設定を許可しない場合
NullPointerException - key または valuenull の場合
IllegalArgumentException - key が空の場合
導入されたバージョン:
1.2
関連項目:
getProperty(java.lang.String), getProperty(java.lang.String), getProperty(java.lang.String, java.lang.String), PropertyPermission, SecurityManager.checkPermission(java.security.Permission)

clearProperty

public static String clearProperty(String key)
指定されたキーによって示されたシステムプロパティを削除します。

セキュリティマネージャが存在する場合は、PropertyPermission(key, "write") アクセス権を使って SecurityManager.checkPermission メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。例外がスローされなかった場合は、指定されたプロパティは削除されます。

パラメータ:
key - 削除されるシステムプロパティの名前
戻り値:
システムプロパティの以前の文字列値。そのキーにプロパティがなかった場合は null
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkPropertiesAccess メソッドが、指定されたシステムプロパティへのアクセスを許可しない場合
NullPointerException - keynull の場合
IllegalArgumentException - key が空の場合
導入されたバージョン:
1.5
関連項目:
getProperty(java.lang.String), setProperty(java.lang.String, java.lang.String), Properties, SecurityException, SecurityManager.checkPropertiesAccess()

getenv

public static String getenv(String name)
指定された環境変数の値を取得します。環境変数は、システム固有の外部にある名前付きの値です。

セキュリティマネージャが存在する場合は、RuntimePermission("getenv."+name) アクセス権を使って checkPermission メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。例外がスローされない場合、変数 name の値が返されます。

「システムプロパティ」と「環境変数」は、名前と値との間で概念的にマップされています。両方のメカニズムを使って、ユーザー定義情報を Java プロセスに渡すことができます。環境変数は、よりグローバルな効果を及ぼします。これは、プロセスにより定義されたすべての子孫にとって環境変数が直接の Java サブプロセスであるばかりでなく、可視であるからです。これらは、異なるオペレーティングシステム上で微妙に異なるセマンティクス (大文字と小文字を区別しないなど) を持つことができます。これらの理由から、環境変数は意図しない副作用を持つ可能性が高くなります。可能な場合は、システムプロパティを使用することがもっとも適切です。環境変数は、グローバルな効果が必要なときや、外部システムインタフェースが環境変数 (PATH など) を必要とするときに使う必要があります。

UNIX システムでは、name のアルファベットの大文字と小文字は区別されますが、Microsoft Windows システムでは一般に区別されません。たとえば、System.getenv("FOO").equals(System.getenv("foo")) という表現は Microsoft Windows では true です。

パラメータ:
name - 環境変数の名前
戻り値:
変数の文字列値。システム環境で変数を定義しない場合は null
例外:
NullPointerException - namenull の場合
SecurityException - セキュリティマネージャが存在し、checkPermission メソッドが環境変数 name へのアクセスを許可しないとき
関連項目:
getenv(), ProcessBuilder.environment()

getenv

public static Map<String,String> getenv()
現在のシステム環境の変更できない文字列マップのビューを返します。環境は、名前から値へのシステム依存のマッピングであり、親プロセスから子プロセスに渡されます。

システムが環境変数をサポートしていない場合は、空のマップが返されます。

返されたマップは、null のキーや値を含みません。null のキーや値があるかどうかクエリーを実行すると、NullPointerException がスローされます。String 型ではないキーや値があるかどうかクエリーを実行すると、ClassCastException がスローされます。

返されたマップとそのコレクションビューは、Object.equals(java.lang.Object) メソッドと Object.hashCode() メソッドの汎用規約に従わない可能性があります。

返されたマップは、一般にすべてのプラットフォームで大文字と小文字を区別します。

セキュリティマネージャが存在する場合は、RuntimePermission("getenv.*") アクセス権を使って checkPermission メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。

Java サブプロセスに情報を渡す場合、一般的に環境変数よりもシステムプロパティが推奨されます。

戻り値:
変数名から値へのマップとしての環境
例外:
SecurityException - セキュリティマネージャが存在し、checkPermission メソッドがプロセス環境へのアクセスを許可しないとき
導入されたバージョン:
1.5
関連項目:
getenv(String), ProcessBuilder.environment()

exit

public static void exit(int status)
現在実行している Java 仮想マシンを終了します。引数はステータスコードとして作用します。通例、ゼロ以外のステータスコードは異常終了を示します。

このメソッドは Runtime クラスの exit メソッドを呼び出します。このメソッドは、正常に復帰することはありません。

System.exit(n) の呼び出しの動作は、実際には次の呼び出しと同じです。

 Runtime.getRuntime().exit(n) 

パラメータ:
status - 終了のステータス
例外:
SecurityException - セキュリティマネージャが存在し、その checkExit メソッドが、指定されたステータスでの終了を許可しない場合
関連項目:
Runtime.exit(int)

gc

public static void gc()
ガベージコレクタを実行します。

gc メソッドの呼び出しは、現在占有しているメモリを再度迅速に利用するために、Java 仮想マシンが使用しないオブジェクトのリサイクルを実行することを意味します。メソッドの呼び出しから制御が戻るのは、Java 仮想マシンが、破棄されたオブジェクトが占有していたスペースを最大限まで回復し終えたときです。

System.gc() の呼び出しの動作は、実際には次の呼び出しと同じです。

 Runtime.getRuntime().gc() 

関連項目:
Runtime.gc()

runFinalization

public static void runFinalization()
ファイナライズを保留しているオブジェクトのファイナライズメソッドを実行します。

このメソッドを呼び出すと、Java 仮想マシンが、破棄されていることがわかっていて finalize メソッドが実行されていないオブジェクトに対して finalize メソッドの実行が試行されます。メソッドの呼び出しから制御が戻るのは、Java 仮想マシンが、すべての未処理のファイナライズを最大限まで完了し終えたときです。

System.runFinalization() の呼び出しの動作は、実際には次の呼び出しと同じです。

 Runtime.getRuntime().runFinalization() 

関連項目:
Runtime.runFinalization()

runFinalizersOnExit

@Deprecated
public static void runFinalizersOnExit(boolean value)
推奨されていません。 このメソッドは本質的に安全ではありません。ほかのスレッドが同時にそれらのオブジェクトを操作しているときに、生存中のオブジェクトに対してファイナライザが呼び出され、これにより、エラー動作またはデッドロックが発生します。

終了時のファイナライズを有効または無効にします。これを実行することによって、自動的に呼び出されていないファイナライザを持つすべてのオブジェクトのファイナライザが呼び出され、Java Runtime の終了前に実行されるようになります。デフォルトでは終了時のファイナライズは無効になっています。

セキュリティマネージャが存在する場合は、確実に終了が許可されるように、最初に引数を 0 として checkExit メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。

パラメータ:
value - ファイナライズを有効にするか無効にするかを示す
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkExit メソッドが終了を許可しない場合
導入されたバージョン:
JDK1.1
関連項目:
Runtime.exit(int), Runtime.gc(), SecurityManager.checkExit(int)

load

public static void load(String filename)
指定されたファイル名を持つコードファイルを、ダイナミックライブラリとしてローカルファイルシステムからロードします。filename 引数は完全なパス名でなければなりません。

System.load(name) の呼び出しの動作は、実際には次の呼び出しと同じです。

 Runtime.getRuntime().load(name) 

パラメータ:
filename - ロードするファイル
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkLink メソッドが、指定されたダイナミックライブラリのロードを許可しない場合
UnsatisfiedLinkError - ファイルが存在しない場合
NullPointerException - filenamenull の場合
関連項目:
Runtime.load(java.lang.String), SecurityManager.checkLink(java.lang.String)

loadLibrary

public static void loadLibrary(String libname)
引数 libname によって指定されるシステムライブラリをロードします。ライブラリ名が実際のシステムライブラリにマッピングされる方法は、システムによって異なります。

System.loadLibrary(name) の呼び出しの動作は、実際には次の呼び出しと同じです。

 Runtime.getRuntime().loadLibrary(name) 

パラメータ:
libname - ライブラリの名前
例外:
SecurityException - セキュリティマネージャが存在し、セキュリティマネージャの checkLink メソッドが、指定されたダイナミックライブラリのロードを許可しない場合
UnsatisfiedLinkError - ライブラリが存在しない場合
NullPointerException - libnamenull の場合
関連項目:
Runtime.loadLibrary(java.lang.String), SecurityManager.checkLink(java.lang.String)

mapLibraryName

public static String mapLibraryName(String libname)
ライブラリ名を、ネイティブライブラリを表すプラットフォーム依存の文字列にマッピングします。

パラメータ:
libname - ライブラリの名前
戻り値:
プラットフォーム依存のネイティブライブラリ名
例外:
NullPointerException - libnamenull の場合
導入されたバージョン:
1.2
関連項目:
loadLibrary(java.lang.String), ClassLoader.findLibrary(java.lang.String)

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。