2011-06-24 16 views

答えて

1

ASMは、Javaバイトコードの操作と分析のフレームワークです。既存のクラスを変更したり、バイナリ形式で直接クラスを動的に生成したりするのに使用できます。

1

これはあなたが探しているものかどうかは分かりませんが、Javassistまたはcglibというライブラリを検討してください。

Javassist(Javaプログラミングアシスタント)は、Javaバイトコード操作を簡単にします。 Javaのバイトコードを編集するためのクラスライブラリです。 Javaプログラムは実行時に新しいクラスを定義し、クラスファイルをロードするときにクラスファイルを変更することができます。 [...]

cglibは、強力で高性能なコード生成ライブラリで、実行時にJAVAクラスを拡張し、インタフェースを実装するために使用されます。 [...]

0

バイトコードレベルで作業したくない場合は、Java SE 6のCompiler APIを使用することが考えられます。例はhereを参照してください。

0

JavaのProxyクラスを使用すると、実行時に特定のインターフェイスを実装する動的クラスを作成できます。そのようなクラスは、メソッド呼び出しを処理するためにInvocationHandlerを使用します。

関連する問題