Foundation 1.1.2

パッケージ java.lang

Java プログラム言語の設計にあたり基本的なクラスを提供します。

参照先:
          説明

インタフェースの概要
CharSequence CharSequence は、読み取り可能な文字シーケンスです。
Cloneable Object.clone() メソッドに対して、そのメソッドがそのクラスのインスタンスのフィールド対フィールドのコピーを正当に作成できることを示すために、Cloneable インタフェースを実装したクラスです。
Comparable このインタフェースを実装する各クラスのオブジェクトに全体順序付けを強制します。
Runnable インスタンスを 1 つのスレッドで実行するすべてのクラスでは、Runnable インタフェースを実装する必要があります。
 

クラスの概要
Boolean Boolean クラスは、プリミティブ型 boolean の値をオブジェクトにラップします。
Byte Byte クラスは、プリミティブ型 byte の値をオブジェクト内にラップします。
Character Character クラスは、プリミティブ型 char の値をオブジェクトにラップします。
Character.Subset このクラスのインスタンスは、Unicode 文字セットの特定のサブセットを表します。
Character.UnicodeBlock Unicode 仕様で定義されている文字ブロックを表す文字サブセットのファミリ。
Class Class クラスのインスタンスは、実行中の Java アプリケーションのクラスおよびインタフェースを表します。
ClassLoader クラスローダーは、クラスのロードを担当するオブジェクトです。
Compiler Compiler クラスは、Java からネイティブコードへのコンパイラおよび関連サービスをサポートします。
Double Double クラスは、プリミティブ型 double の値をオブジェクトにラップします。
Float Float クラスは、プリミティブ型 float の値をオブジェクト内にラップします。
InheritableThreadLocal このクラスは、親スレッドから子スレッドへの値の継承を提供するために、ThreadLocal を拡張します。
Integer Integer クラスは、プリミティブ型 int の値をオブジェクトにラップします。
Long Long クラスは、プリミティブ型 long の値をオブジェクトにラップします。
Math Math クラスは、指数関数、対数関数、平方根、および三角関数といった基本的な数値処理を実行するためのメソッドを含んでいます。
Number abstract クラス Number は、クラス BigDecimalBigIntegerByteDoubleFloatIntegerLong、および Short のスーパークラスです。
Object Object クラスは、クラス階層のルートです。
Package Package オブジェクトには、Java パッケージの実装と仕様に関するバージョン情報が含まれます。
Process Runtime.exec メソッドは、ネイティブなプロセスを作成し、Process のサブクラスのインスタンスを返します。
Runtime Java アプリケーションはすべて、Runtime クラスの単一のインスタンスを持ちます。
RuntimePermission このクラスは、実行時のアクセス権に関連します。
SecurityManager セキュリティーマネージャーとは、アプリケーションがセキュリティーポリシーを実装できるクラスです。
Short Short クラスは、プリミティブ型 short の値をオブジェクト内にラップします。
StackTraceElement スタックトレース内の要素で、Throwable.getStackTrace() により返される値。
StrictMath StrictMath クラスは、指数関数、対数関数、平方根、および三角関数といった基本的な数値処理を実行するためのメソッドを含んでいます。
String String クラスは文字列を表します。
StringBuffer 文字列バッファーは可変の文字シーケンスを実装します。
System System クラスには有用なクラスフィールドおよびメソッドがあります。
Thread 「スレッド」とは、プログラム内での実行スレッドのことです。
ThreadGroup スレッドグループは、スレッドの集合を表します。
ThreadLocal このクラスはスレッドローカル変数を提供します。
Throwable Throwable クラスは、Java 言語のすべてのエラーと例外のスーパークラスです。
Void Void クラスは、インスタンスを生成できないプレースホルダーとしてのクラスであり、Java キーワード void を表す Class オブジェクトへの参照を保持するのに使用されます。
 

例外の概要
ArithmeticException 算術計算で例外的条件が発生した場合にスローされます。
ArrayIndexOutOfBoundsException 不正なインデックスを使って配列がアクセスされたことを示すためにスローされます。
ArrayStoreException 不正な型のオブジェクトをオブジェクトの配列に格納しようとしたことを示すためにスローされます。
ClassCastException あるオブジェクトを継承関係にないクラスにキャストしようとしたことを示すためにスローされます。
ClassNotFoundException アプリケーションが、クラスの文字列名を使用して次のメソッドでロードしようとしたが、指定された名前のクラスの定義が見つからなかった場合にスローされます。
CloneNotSupportedException オブジェクトを複製するために Object クラスの clone メソッドが呼び出されたが、そのオブジェクトのクラスが Cloneable インタフェースを実装していないことを示すためにスローされます。
Exception Exception クラスとそのサブクラスは、通常のアプリケーションでキャッチされる可能性のある状態を示す Throwable の形式の 1 つです。
IllegalAccessException アプリケーションが、配列以外のインスタンス作成、フィールドの設定または取得、メソッドの呼び出しを試みた場合に、IllegalAccessException がスローされます。
IllegalArgumentException 不正な引数、または不適切な引数をメソッドに渡したことを示すためにスローされます。
IllegalMonitorStateException 所定のモニターを持たないスレッドがオブジェクトのモニターで待つことを試みたこと、あるいはほかのスレッドが所定のモニターを持たずにオブジェクトのモニターで待つことを通知したことを示すためにスローされます。
IllegalStateException 不正または不適切なときにメソッドが呼び出されたことを示します。
IllegalThreadStateException 要求されたオペレーションに対してスレッドの状態が不適切であることを示すためにスローされます。
IndexOutOfBoundsException ある種のインデックス (配列、文字列、ベクトルなど) が範囲外であることを示すためにスローされます。
InstantiationException アプリケーションが Class クラスの newInstance メソッドを使ってクラスのインスタンスを生成しようとしたときに、クラスがインタフェースまたは abstract クラスであるために指定されたオブジェクトのインスタンスを生成できない場合にスローされます。
InterruptedException あるスレッドが長い間の待ち状態、休止状態、または一時停止の状態であるとき、ほかのスレッドが Thread クラスの interrupt メソッドを使ってこの状態に割り込みをかけた場合にスローされます。
NegativeArraySizeException 負のサイズを持った配列をアプリケーションが作成しようとした場合にスローされます。
NoSuchFieldException 指定された名前のフィールドがクラスにはないことを通知します。
NoSuchMethodException 特定のメソッドが見つからない場合にスローされます。
NullPointerException オブジェクトが必要な場合に、アプリケーションが null を使おうとするとスローされます。
NumberFormatException アプリケーションが文字列を数値型に変換しようとしたとき、文字列の形式が正しくない場合にスローされます。
RuntimeException RuntimeException は、Java 仮想マシンの通常の処理でスローすることができる各種の例外のスーパークラスです。
SecurityException セキュリティーマネージャーによってスローされ、セキュリティー違反を示します。
StringIndexOutOfBoundsException String メソッドによりスローされ、インデックスが負または文字列のサイズより大きいことを示します。
UnsupportedOperationException 要求されたオペレーションがサポートされていないことを示すためにスローされます。
 

エラーの概要
AbstractMethodError アプリケーションが abstract メソッドを呼び出そうとした場合にスローされます。
AssertionError 宣言が失敗したことを示すためにスローされます。
ClassCircularityError クラスの初期化時にループが見つかった場合にスローされます。
ClassFormatError Java 仮想マシンがクラスファイルを読み込もうとして、ファイルが壊れていると判断した場合、またはクラスファイルとして解釈できない場合にスローされます。
Error ErrorThrowable のサブクラスで、通常のアプリケーションであればキャッチすべきではない重大な問題を示します。
ExceptionInInitializerError static 初期化子で予想外の例外が発生したことを通知します。
IllegalAccessError アクセスできないフィールドへのアクセスや変更、あるいはアクセスできないメソッドの呼び出しをアプリケーションが試みた場合にスローされます。
IncompatibleClassChangeError クラス定義に互換性のない変更があった場合にスローされます。
InstantiationError アプリケーションが Java の new 構文を使って abstract クラスやインタフェースのインスタンスを生成しようとしたときにスローされます。
InternalError Java 仮想マシン内で予期しない内部エラーが発生したことを示すためにスローされます。
LinkageError LinkageError のサブクラスは、あるクラスが別のクラスに依存関係がある場合に、前者のクラスをコンパイルしたあと、後者のクラスへの変更によって互換性が失われたことを示します。
NoClassDefFoundError 通常のメソッド呼び出し、あるいは new 式を使った新しいインスタンスの生成で、Java 仮想マシンまたは ClassLoader インスタンスがクラス定義をロードしようとしたが、クラス定義が見からない場合にスローされます。
NoSuchFieldError オブジェクトの指定されたフィールドにアプリケーションがアクセス、または変更を試みたとき、オブジェクトにそのフィールドがない場合にスローされます。
NoSuchMethodError あるクラスの特定のメソッド (static メソッド、またはインスタンスメソッド) をアプリケーションが呼び出そうとしたとき、すでにそのクラスには呼び出されたメソッドの定義がない場合にスローされます。
OutOfMemoryError メモリー不足のために Java 仮想マシンがオブジェクトを割り当てることができず、ガベージコレクタによっても使用可能なメモリーをこれ以上確保できない場合にスローされます。
StackOverflowError アプリケーションでの再帰の回数が多すぎてスタックオーバーフローが起こる場合にスローされます。
ThreadDeath ThreadDeath のインスタンスは、Thread クラスの引数なしの stop メソッドが呼び出されると、対象となるスレッド内でスローされます。
UnknownError 未知であるが重大な例外が Java 仮想マシンで発生した場合にスローされます。
UnsatisfiedLinkError Java 仮想マシンが、native と宣言されたメソッドの適切なネイティブ言語の定義を見つけることができない場合にスローされます。
UnsupportedClassVersionError Java 仮想マシンが、クラスファイルの読み込み中に、そのファイルのメジャーバージョン番号とマイナーバージョン番号がサポートされていないと判定した場合にスローされます。
VerifyError クラスファイルが適切な形式でも、ある種の内部矛盾またはセキュリティー上の問題があることを「ベリファイア (verifier)」が検出した場合にスローされます。
VirtualMachineError Java 仮想マシンが壊れているか、または動作を継続するのに必要なリソースが足りなくなったことを示すためにスローされます。
 

パッケージ java.lang の説明

Java プログラム言語の設計にあたり基本的なクラスを提供します。もっとも重要なクラスは、クラス階層のルートである Object と、実行時のクラスを表すインスタンスである Class です。

多くの場合は、プリミティブ型の値をオブジェクトのように表す必要があります。ラッパークラス BooleanCharacterIntegerLongFloat、および Double がこの目的に使用されます。たとえば、Double 型のオブジェクトは double 型のフィールドを含み、参照型の変数に格納される先への参照といった方法で値を表します。このクラスはプリミティブ値の間で変換するメソッドを提供すると同時に、equals および hashCode などの標準メソッドをサポートします。Void クラスは、インスタンスを生成できないクラスで、プリミティブ型 void を表す Class オブジェクトへの参照を保持します。

Math クラスは、正接 (サイン)、余弦 (コサイン)、平方根といった計算でよく使用される関数を提供します。String および StringBuffer クラスは文字列でよく使用されるオペレーションを提供します。

クラス ClassLoaderProcessRuntimeSecurityManager、および System は、動的なクラスのロード、外部プロセスの作成、日付などのホスト環境の照会、およびセキュリティーポリシーの実施を管理する「システムオペレーション」を提供します

Throwable クラスは throw 文 (§14.16) によってスローされるオブジェクトを包含します。Throwable のサブクラスはエラーと例外を表します。

パッケージの仕様

文字エンコーディング

java.lang および java.io パッケージのさまざまなコンストラクタおよびメソッドは、未変換の 8 ビットバイトと 16 ビット Unicode 文字の間で変換するときに使用する文字エンコーディングを指定する文字列引数を受け入れます。そのようなエンコーディングには、次の文字で構成される文字列で名前を付けます。 エンコーディング名の最初の文字は、必ずアルファベットか数字になります。空の文字列は正当なエンコーディング名として認識されません。

エンコーディングには、複数の名前を指定できます。エンコーディング名の 1 つを「正規名」とします。エンコーディングの正規名は InputStreamReader および OutputStreamWriter クラスの getEncoding メソッドが返す名前です。

通常、エンコーディング名は RFC2278: IANA Charset Registration Procedures の規則に準拠します。IANA Charset Registry に記載されているエンコーディングリストを Java プラットフォームの実装がサポートする場合は、名前の 1 つはレジストリにある名前である必要があります。エンコーディングの多くはレジストリに 2 つ以上の名前があり、その場合レジストリは名前の 1 つを「MIME 優先」と識別します。Java プラットフォームの実装では、サポートするエンコーディングに MIME 優先レジストリ名がある場合は、それをサポートする必要があります。便宜上、ほかのレジストリ名も追加サポートできます。IANA MIME 優先のエンコーディング名がある場合は、それが正規名であることが多いです。IANA 規則に準じて、IANA レジストリ名からエンコーディングへのマッピングでは大文字と小文字が区別されません。

Java プラットフォームの実装は、すべて次の文字エンコーディングをサポートする必要があります。サポートされているその他のエンコーディングについては、実装のリリースノートを参照してください。

US-ASCII 7 ビット ASCII (ISO646-US/Unicode 文字セットの Basic Latin ブロック)
ISO-8859-1   ISO Latin Alphabet No. 1 (ISO-LATIN-1)
UTF-8 8 ビット Unicode 変換形式
UTF-16BE 16 ビット Unicode 変換形式、ビッグエンディアンバイト順序
UTF-16BE 16 ビット Unicode 変換形式、リトルエンディアンバイト順序
UTF-16 16 ビット Unicode 変換形式、必須初期バイト順序マークで指定したバイト順序 (入力の場合はいずれの順序も受け入れ、出力はビッグエンディアン順序)
さまざまな Unicode 変換形式は The Unicode Standard および Unicode FAQ に詳細が記載されています

Java 仮想マシンの各インスタンスにはデフォルト文字エンコーディングがあります。デフォルトエンコーディングは、仮想マシンの起動時に、通常はロケールおよび基本オペレーティングシステムが使用するエンコーディングによって決まります。

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

Foundation 1.1.2

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

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