JavaCompiler(詳細に言うと、URLClassLoader)について試してたときに気付いたんだけど、FileからURLを作る際に使っていたtoURL()って、非推奨になったんだ。
でも代替策は単純で、toURI().toURL()にすればいい…その程度なら、toURL()の中身をそう変えればいいのに(苦笑)
でもそう変えない理由は、“今までしてなかったチェック”を“する”ように修正することはしない、っていう互換性の問題なんだろうなぁ…。
あと、Javaソースを示す文字列をプログラム内に書こうとして思ったんだけど、StringBuilderって、改行付きの文字列を追加する(例えばprintln()のような)メソッドって無いんだよねぇ。
仕方が無いので、PrintWriterやPrintStreamで頑張るのかな。どちらもprintln()・printf()が使えるし。(Sytem.out.println()がPrintStreamなので PrintStreamの方が慣れてる感じはするけど、推奨はPrintWriter?
そもそもOutputStreamを引数にとるWriterがあるのだし、なぜPrintStreamなんてクラスがあるんだろう? Streamがバイナリ用(データ全般)、Writerが文字列用、という棲み分けだと思ってるんだけど違うのかなぁ?)
まぁつまり、StringBuilderにappendln()のようなメソッドがあれば良いわけなのだが。
※コメント投稿者のブログIDはブログ作成者のみに通知されます