次の方法で共有


Class.ForName メソッド

定義

オーバーロード

ForName(String)

指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。

ForName(String, Boolean, ClassLoader)

指定したクラス ローダーを使用して、指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。

ForName(String)

指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。

[Android.Runtime.Register("forName", "(Ljava/lang/String;)Ljava/lang/Class;", "")]
public static Java.Lang.Class ForName (string className);
[<Android.Runtime.Register("forName", "(Ljava/lang/String;)Ljava/lang/Class;", "")>]
static member ForName : string -> Java.Lang.Class

パラメーター

className
String

目的のクラスの完全修飾名。

戻り値

指定した名前のクラスの Class オブジェクト。

属性

例外

要求されたクラスが見つからない場合は 。

リンケージ中にエラーが発生した場合

クラスの静的初期化中に例外が発生した場合。

注釈

指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。 このメソッドの呼び出しは、次と同じです。

<blockquote>Class.forName(className, true, currentLoader)</blockquote>

ここで、 currentLoader は現在のクラスの定義クラス ローダーを表します。

たとえば、次のコード フラグメントは、java.lang.Thread という名前のクラスのランタイム Class記述子を返します。

<blockquote>Class t = Class.forName("java.lang.Thread")</blockquote>

forName("X")を呼び出すと、Xという名前のクラスが初期化されます。

java.lang.Class.forName(java.lang.String)の Java ドキュメント。

このページの一部は、Androidオープンソースプロジェクトによって作成および共有された作業に基づく変更でありCreative Commons 2.5属性ライセンスに記載されている条件に従って使用されます。

適用対象

ForName(String, Boolean, ClassLoader)

指定したクラス ローダーを使用して、指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。

[Android.Runtime.Register("forName", "(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;", "")]
public static Java.Lang.Class ForName (string name, bool initialize, Java.Lang.ClassLoader? loader);
[<Android.Runtime.Register("forName", "(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;", "")>]
static member ForName : string * bool * Java.Lang.ClassLoader -> Java.Lang.Class

パラメーター

name
String

目的のクラスの完全修飾名

initialize
Boolean

クラス true 初期化される場合は。 <em> Java 言語仕様</em>のセクション 12.4 を参照してください。

loader
ClassLoader

クラスを読み込む必要があるクラス ローダー

戻り値

目的のクラスを表すクラス オブジェクト

属性

例外

要求されたクラスが見つからない場合は 。

リンケージ中にエラーが発生した場合

クラスの静的初期化中に例外が発生した場合。

注釈

指定したクラス ローダーを使用して、指定した文字列名を持つクラスまたはインターフェイスに関連付けられている Class オブジェクトを返します。 クラスまたはインターフェイスの完全修飾名 ( getNameによって返されるのと同じ形式) を指定すると、このメソッドはクラスまたはインターフェイスの検索、読み込み、リンクを試みます。 指定したクラス ローダーを使用して、クラスまたはインターフェイスを読み込みます。 パラメーター loader が null の場合、クラスはブートストラップ クラス ローダーを介して読み込まれます。 クラスは、 initialize パラメーターが true されている場合、および以前に初期化されていない場合にのみ初期化されます。

nameがプリミティブ型または void を示す場合は、名前がnameされた名前のないパッケージ内のユーザー定義クラスの検索が試行されます。 したがって、このメソッドを使用して、プリミティブ型または void を表す Class オブジェクトを取得することはできません。

name配列クラスを表す場合、配列クラスのコンポーネント型は読み込まれますが、初期化されません。

たとえば、インスタンス メソッドでは、次の式が使用されます。

<blockquote>Class.forName("Foo")</blockquote>

は以下に匹敵します。

<blockquote>Class.forName("Foo", true, this.getClass().getClassLoader())</blockquote>

このメソッドは、 <em> Java 言語仕様</em>のセクション 12.2、12.3、12.4 で指定されている読み込み、リンク、または初期化に関連するエラーをスローすることに注意してください。 このメソッドは、要求されたクラスが呼び出し元からアクセスできるかどうかを確認しないことに注意してください。

1.2 で追加されました。

java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader)の Java ドキュメント。

このページの一部は、Androidオープンソースプロジェクトによって作成および共有された作業に基づく変更でありCreative Commons 2.5属性ライセンスに記載されている条件に従って使用されます。

適用対象