|
|||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.asyrinx.brownie.core.lang.ClassUtils
クラスに関するユーティリティです。
クラス名を指定した生成、基底クラスのチェック付の生成などが 主な責務です。
インスタンス生成のメソッドnewObjectのほとんどは、引数にbaseClassという
Class変数を持ち、この引数によって生成するインスタンスのクラスが
意図しているクラス(あるいはインタフェース)を継承(実装)するものなのかをチェックします。
これらのメソッドは例外InstantiationExceptionをthrowsしています。 これは以下の場合にthrowされます。
・引数baseClassによるチェックがパスしなかった。
・クラス名が指定されていない。
・クラスが見つからない。
・コンストラクタが見つからない。
・コンストラクタの引数が異なる。
・クラスへのアクセス権に問題がある。
・その他インスタンス生成の例外が発生した場合。
フィールドの概要 | |
static java.lang.String |
PACKAGE_DELIM
|
static char |
PACKAGE_DELIM_CHAR
|
コンストラクタの概要 | |
ClassUtils()
|
メソッドの概要 | |
static java.lang.reflect.Constructor |
findConstructor(java.lang.Class targetClass,
java.lang.Object[] params)
クラスと引数からコンストラクタを検索します。 |
static int |
getClassLoaderDepth(java.lang.ClassLoader loader)
|
static boolean |
isAncestor(java.lang.ClassLoader ancestor,
java.lang.ClassLoader target)
|
static boolean |
isAssignableFrom(java.lang.Class target,
java.lang.String className)
指定したtargetクラスが、classNameで表されるクラス名のクラスかどうかを返す。 |
static boolean |
matchTypes(java.lang.Object[] values,
java.lang.Class[] valueTypes)
引数valuesの各要素が、引数valueTypesの各要素(Classクラスのインスタンス)の インスタンスとして対応するるかどうかを判断します。 |
static java.util.List |
modifierToString(int value)
|
static java.lang.Object |
newObject(java.lang.Class instanciateClass,
java.lang.Class baseClass)
指定されたクラスのインスタンスを生成します。 |
static java.lang.Object |
newObject(java.lang.Class instanciateClass,
java.lang.Class baseClass,
java.lang.Object[] params)
コンストラクタを検索しインスタンスを生成します。 |
static java.lang.Object |
newObject(java.lang.String className,
java.lang.Class baseClass)
クラス名によって指定されたクラスのインスタンスを生成します。 |
static java.lang.Object |
newObject(java.lang.String className,
java.lang.ClassLoader classLoader,
java.lang.Class baseClass)
クラス名によって指定されたクラスのインスタンスを生成します。 |
static java.lang.Object |
newObject(java.lang.String className,
java.lang.ClassLoader classLoader,
java.lang.Class baseClass,
java.lang.Object[] params)
コンストラクタを検索しインスタンスを生成します。 |
static void |
showClassLoaders()
|
static void |
showClassLoaders(java.lang.Class clazz)
|
static void |
showClassLoaders(java.lang.ClassLoader loader)
|
static java.lang.String |
toShortClassName(java.lang.Class class1)
|
static java.lang.String |
toShortClassName(java.lang.String className)
|
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
public static final char PACKAGE_DELIM_CHAR
public static final java.lang.String PACKAGE_DELIM
コンストラクタの詳細 |
public ClassUtils()
メソッドの詳細 |
public static java.lang.Object newObject(java.lang.String className, java.lang.ClassLoader classLoader, java.lang.Class baseClass) throws java.lang.InstantiationException
className
- 生成されるクラスの名前classLoader
- クラスを名前で検索する際のクラスローダ
nullを指定した場合には、カレントスレッドのコンテキストクラスローダが使用されます。baseClass
- 生成されるクラスの基底クラス nullを指定した場合には、Objectクラスのclass変数が使用されます。
java.lang.InstantiationException
public static java.lang.Object newObject(java.lang.String className, java.lang.Class baseClass) throws java.lang.InstantiationException
className
- 生成されるクラスの名前baseClass
- 生成されるクラスの基底クラス nullを指定した場合には、Objectクラスのclass変数が使用されます。
java.lang.InstantiationException
public static java.lang.Object newObject(java.lang.Class instanciateClass, java.lang.Class baseClass) throws java.lang.InstantiationException
instanciateClass
- 生成されるクラスbaseClass
- 生成されるクラスの基底クラス nullを指定した場合には、Objectクラスのclass変数が使用されます。
java.lang.InstantiationException
public static java.lang.Object newObject(java.lang.Class instanciateClass, java.lang.Class baseClass, java.lang.Object[] params) throws java.lang.InstantiationException
instanciateClass
- 生成されるインスタンスのクラス。baseClass
- 生成されるインスタンスのクラスの基底クラス nullを指定した場合には、Objectクラスのclass変数が使用されます。params
- コンストラクタに渡される引数。
java.lang.InstantiationException
public static java.lang.Object newObject(java.lang.String className, java.lang.ClassLoader classLoader, java.lang.Class baseClass, java.lang.Object[] params) throws java.lang.InstantiationException
className
- 生成されるクラスの名前classLoader
- クラスを名前で検索する際のクラスローダ
nullを指定した場合には、カレントスレッドのコンテキストクラスローダが使用されます。baseClass
- 生成されるインスタンスのクラスの基底クラス nullを指定した場合には、Objectクラスのclass変数が使用されます。params
- コンストラクタに渡される引数。
java.lang.InstantiationException
public static java.lang.reflect.Constructor findConstructor(java.lang.Class targetClass, java.lang.Object[] params)
public static boolean matchTypes(java.lang.Object[] values, java.lang.Class[] valueTypes)
public static java.util.List modifierToString(int value)
public static boolean isAssignableFrom(java.lang.Class target, java.lang.String className)
target
- 対象となるClassクラスのインスタンスclassName
- 照合するクラス名。
public static void showClassLoaders()
public static void showClassLoaders(java.lang.Class clazz)
public static void showClassLoaders(java.lang.ClassLoader loader)
public static int getClassLoaderDepth(java.lang.ClassLoader loader)
public static boolean isAncestor(java.lang.ClassLoader ancestor, java.lang.ClassLoader target)
public static java.lang.String toShortClassName(java.lang.Class class1)
public static java.lang.String toShortClassName(java.lang.String className)
|
|||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |