JRE1.6でJavaCompilerという、javacを起動する(と思われる)クラスが追加されたようだ。
これを使うと、実行時にソースをコンパイルしてロードして使うことが出来る!
ってことは、文字列で式を書いて、それをメソッドの一部分としてコンパイルして使う、なんて事が出来るわけだよなー。
ってことは、四則演算(計算式解釈)クラスなんて不要になるなー。
まぁそもそも、そういう目的にはスクリプト(JavaScriptとか)を呼べるようになった時点でとっくに不要になってたかもしれないが(爆)
Javassistなんかも要らなくなる?
ってことは無いか。クラスロード時にバイトコードを入れ替えるのとコンパイルするのとは訳が違うからなー。
実行時にコンパイルするもの…Antのjavacタスクや、TomcatやWebLogicといったJSPをサーブレットへのコンパイルするAPサーバーについては、もしかするとJavaCompilerに置き換える意義があるかも?
※コメント投稿者のブログIDはブログ作成者のみに通知されます