javaLib.getField() システム関数は、EGL Java™ オブジェクト・スペース内の指定された Java オブジェクトまたはクラスの、指定されたフィールドの値を戻します。
javaLib.getField() や他の類似の関数が実行される EGL Java オブジェクト・スペースについて詳しくは、『Java アクセス関数』を参照してください。 EGL は、この Java アクセスのメソッドを以前のバージョンとの互換性のために保守します。新規コードの場合は、より強力な ExternalType 構文を使用してください。詳しくは、『ExternalType パーツ』を参照してください。
javaLib.getField(
identifierOrClass javeObjIdOrClass in,
field STRING in)
returns (result anyJavaPrimitive)
長さの不一致について詳しくは、『代入』を参照してください。
以下の例は、myID を objID としてキャストした getField() 関数を示しています。
myVar = javaLib.getField("myID" as "objID:java", "myField");
v60ExceptionCompatibility プログラム・プロパティーが設定されていないか、NO に設定されている場合、例外が発生すると、EGL は JavaObjectException をスローします。 その他のエラーが発生した場合は、EGL によって RuntimeException がスローされます。
v60ExceptionCompatibility プログラム・プロパティーが YES に設定されている場合、javaLib.getField() の処理中にエラーが発生すると、sysVar.errorCode は次の表の値に設定されます。
| sysVar.errorCode の値 | 説明 |
|---|---|
| 00001000 | 呼び出されたメソッドによって、 またはクラスの初期化の結果として、例外がスローされました。 |
| 00001001 | オブジェクトの値が NULL でした。 または指定された識別子がオブジェクト・スペース内にありませんでした。 |
| 00001002 | 指定された名前の public メソッド、フィールド、またはクラスが存在しないか、ロードできません。 |
| 00001004 | メソッドが NULL 値を戻したか、メソッドが値を戻さないか、 またはフィールドの値が NULL でした。 |
| 00001005 | 戻り値が代入した変数の型に一致しません。 |
| 00001007 | メソッドまたはフィールドに関する情報の取得中に、 SecurityException または IllegalAccessException がスローされました。 または、final 宣言されたフィールドの値を設定しようとしました。 |
| 00001009 | クラス名ではなく、ID を指定する必要があります。 メソッドまたはフィールドが静的ではありません。 |