|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.lang.reflect.AccessibleObject
AccessibleObject クラスは、Field オブジェクト、Method オブジェクト、および Constructor オブジェクトの基底クラスです。このクラスを使うと、リフレクトされたオブジェクトの使用時に、デフォルトの Java 言語アクセス制御チェックを抑制するかどうかのフラグ設定を行えます。アクセスチェックは、次の場合に public、デフォルト (package) アクセス、protected、および private メンバに対して実行されます。つまり、フィールドの設定または取得に Field が使用される場合、メソッドの呼び出しに Method が使用される場合、あるいはクラスの新しいインスタンスの生成および初期化に Constructor が使用される場合です。
リフレクトされたオブジェクトで accessible フラグを設定すると、十分な特権を持つ高度なアプリケーション (Java のオブジェクトの直列化やその他の持続性機構など) は、通常は禁止されている方法でオブジェクトを操作できます。
Field
,
Method
,
Constructor
,
ReflectPermission
コンストラクタの概要 | |
protected |
AccessibleObject()
コンストラクタで、Java 仮想マシンだけが使用します。 |
メソッドの概要 | |
boolean |
isAccessible()
このオブジェクトの accessible フラグの値を取得します。 |
static void |
setAccessible(AccessibleObject[] array,
boolean flag)
効率を良くするために、単一のセキュリティチェックにより、オブジェクトの配列の accessible フラグを設定する簡易メソッドです。 |
void |
setAccessible(boolean flag)
このオブジェクトの accessible フラグを、指定された boolean 値に設定します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
protected AccessibleObject()
メソッドの詳細 |
public static void setAccessible(AccessibleObject[] array, boolean flag) throws SecurityException
セキュリティマネージャが存在する場合、まず、セキュリティマネージャの checkPermission
メソッドがアクセス権 ReflectPermission("suppressAccessChecks")
で呼び出されます。
flag
が true
の場合、SecurityException
がスローされますが、入力 array
の要素のアクセス可能性は変わらないことがあります(たとえば、要素オブジェクトが Class
クラスの Constructor
オブジェクトである場合)。このような SecurityException のイベントの場合、オブジェクトへのアクセス可能性は、例外が生じた要素の直前までの配列要素については flag
に設定されます。例外が生じた要素以降の要素へのアクセス可能性は変更されません。
array
- AccessibleObject の配列flag
- 各オブジェクトの accessible フラグの新しい値
SecurityException
- 要求が拒否された場合SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public void setAccessible(boolean flag) throws SecurityException
セキュリティマネージャが存在する場合、まず、セキュリティマネージャの checkPermission
メソッドがアクセス権 ReflectPermission("suppressAccessChecks")
で呼び出されます。
flag
が true
の場合、SecurityException
がスローされますが、このオブジェクトのアクセス可能性は変わらないことがあります (たとえば、この要素オブジェクトが Class
クラスの Constructor
オブジェクトである場合)。
このオブジェクトが java.lang.Class
クラスの Constructor
オブジェクトであり、flag
が true である場合、SecurityException
がスローされます。
flag
- accessible フラグの新しい値
SecurityException
- 要求が拒否された場合SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public boolean isAccessible()
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.