public class PropertyEditorManager extends Object
PropertyEditorManager は、指定された型のエディタを見つけるために 3 つのテクニックを使用します。まず、指定された型でエディタを具体的に登録できるようにする registerEditor メソッドを提供します。次に、指定された型の完全指定クラス名に "Editor" を追加して ("foo.bah.FozEditor" など)、適切なクラスを見つけようとします。最後に、単純なクラス名 (パッケージ名なし) に "Editor" を追加して、一致するクラスをパッケージの検索パスで見つけます。
たとえば入力クラス foo.bah.Fred であれば、最初に PropertyEditorManager のテーブルで、エディタが foo.bah.Fred で登録されているかどうかを調べ、登録されている場合はそのエディタを使用します。次に foo.bah.FredEditor クラスを探します。最後に standardEditorsPackage.FredEditor クラスを探します。
デフォルトの PropertyEditor は、Java プリミティブ型 boolean、byte、short、int、long、float、および double で用意されています。また、java.lang.String、java.awt.Color、および java.awt.Font の各クラスに対しても用意されています。
コンストラクタと説明 |
---|
PropertyEditorManager() |
修飾子と型 | メソッドと説明 |
---|---|
static PropertyEditor |
findEditor(Class<?> targetType)
指定されたターゲット型の値エディタを見つけます。
|
static String[] |
getEditorSearchPath()
プロパティーエディタを検索するためのパッケージ名を取得します。
|
static void |
registerEditor(Class<?> targetType, Class<?> editorClass)
指定されたターゲットクラスの値を編集するためのエディタクラスを登録します。
|
static void |
setEditorSearchPath(String[] path)
プロパティーエディタの検索に使用されるパッケージ名のリストを変更します。
|
public static void registerEditor(Class<?> targetType, Class<?> editorClass)
null
の場合は、既存の定義がすべて削除されます。このため、このメソッドは、登録を取り消すために使用できます。ターゲットクラスまたはエディタクラスがアンロードされると、登録が自動的に取り消されます。
セキュリティーマネージャーがある場合は、その checkPropertiesAccess
メソッドが呼び出されます。これにより、SecurityException がスローされる可能性があります。
targetType
- 編集する型の Class オブジェクトeditorClass
- エディタクラスのクラスオブジェクトSecurityException
- セキュリティーマネージャーが存在し、その checkPropertiesAccess
メソッドがシステムプロパティーの設定を許可しない場合SecurityManager.checkPropertiesAccess()
public static PropertyEditor findEditor(Class<?> targetType)
targetType
- 編集する型の Class オブジェクトpublic static String[] getEditorSearchPath()
この配列のデフォルト値は実装に依存する。たとえば Sun の実装での初期設定は {"sun.beans.editors"}。
public static void setEditorSearchPath(String[] path)
最初に、セキュリティーマネージャーがある場合はその checkPropertiesAccess
メソッドが呼び出されます。この結果、SecurityException がスローされることがあります。
path
- パッケージ名の配列。SecurityException
- セキュリティーマネージャーが存在し、その checkPropertiesAccess
メソッドがシステムプロパティーの設定を許可しない場合。SecurityManager.checkPropertiesAccess()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.