public abstract class LdiClassLoaderUtil extends Object
ClassLoaderを扱うためのユーティリティ・クラスです。| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
LdiClassLoaderUtil()
インスタンスを構築します。
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
static Class |
defineClass(ClassLoader classLoader,
String className,
byte[] bytes,
int offset,
int length)
バイトの配列を
Classクラスのインスタンスに変換します。 |
static Package |
definePackage(ClassLoader classLoader,
String name,
String specTitle,
String specVersion,
String specVendor,
String implTitle,
String implVersion,
String implVendor,
URL sealBase)
指定の
ClassLoaderで名前を使ってパッケージを定義します。 |
static Class |
findLoadedClass(ClassLoader classLoader,
String className)
指定のクラスローダまたはその祖先の暮らすローダが、 このバイナリ名を持つクラスの起動ローダとしてJava仮想マシンにより記録されていた場合は、
指定されたバイナリ名を持つクラスを返します。
|
static ClassLoader |
getClassLoader(Class targetClass) |
static Iterator |
getResources(ClassLoader loader,
String name)
指定のクラスローダから指定された名前を持つすべてのリソースを探します。
|
static Iterator |
getResources(Class targetClass,
String name)
getClassLoader(Class)が返すクラスローダから指定された名前を持つすべてのリソースを探します。 |
static Iterator |
getResources(String name)
コンテキストクラスローダから指定された名前を持つすべてのリソースを探します。
|
protected static boolean |
isAncestor(ClassLoader cl,
ClassLoader other)
クラスローダ
otherがクラスローダclの祖先ならtrueを返します。 |
static Class |
loadClass(ClassLoader loader,
String className)
指定されたバイナリ名を持つクラスをロードします。
|
public static ClassLoader getClassLoader(Class targetClass)
public static Iterator getResources(String name)
name - リソース名ClassLoader.getResources(String)public static Iterator getResources(Class targetClass, String name)
getClassLoader(Class)が返すクラスローダから指定された名前を持つすべてのリソースを探します。targetClass - ターゲット・クラスname - リソース名ClassLoader.getResources(String)public static Iterator getResources(ClassLoader loader, String name)
loader - クラスローダname - リソース名ClassLoader.getResources(String)protected static boolean isAncestor(ClassLoader cl, ClassLoader other)
otherがクラスローダclの祖先ならtrueを返します。cl - クラスローダother - クラスローダotherがクラスローダclの祖先ならtruepublic static Class findLoadedClass(ClassLoader classLoader, String className)
nullを返します。classLoader - クラスローダclassName - クラスのバイナリ名Classオブジェクト。クラスがロードされていない場合はnullClassLoader.findLoadedClass(String)public static Class defineClass(ClassLoader classLoader, String className, byte[] bytes, int offset, int length)
Classクラスのインスタンスに変換します。classLoader - バイナリデータからClassクラスのインスタンスに変換するクラスローダclassName - クラスのバイナリ名bytes - クラスデータを構成するバイト列offset - クラスデータbytesの開始オフセットlength - クラスデータの長さClassオブジェクトClassLoader.defineClass(String, byte[], int, int)public static Package definePackage(ClassLoader classLoader, String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase)
ClassLoaderで名前を使ってパッケージを定義します。classLoader - パッケージを定義するクラスローダname - パッケージ名specTitle - 仕様のタイトルspecVersion - 仕様のバージョンspecVendor - 仕様のベンダーimplTitle - 実装のタイトルimplVersion - 実装のバージョンimplVendor - 実装のベンダーsealBase - nullでない場合、このパッケージは指定されたコードソースURLオブジェクトを考慮してシールされる。そうでない場合、パッケージはシールされないPackageオブジェクトClassLoader.definePackage(String, String, String, String,
String, String, String, URL)public static Class loadClass(ClassLoader loader, String className)
loader - クラスローダclassName - クラスのバイナリ名ClassオブジェクトClassNotFoundRuntimeException - クラスが見つからなかった場合ClassLoader.loadClass(String)Copyright © 2015 The DBFlute Project. All rights reserved.