倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Java6

javax.tools パッケージを使って Java コードをダイナミックにコンパイル!

以前から javax.tools パッケージって気になってたんですが、それを使ったサンプルを見つけたのでちょっと試してみることに。javax.tools パッケージのクラスを使うと、Java クラスをダイナミックに生成することができるそうです。 ここでいう“ダイナミック…

IntelliJ IDEA で実行可能 Jar ファイルを作成するプロジェクトの Gradle ビルドファイル 〜エンコーディングも指定するヨ〜 feat. JDK 1.6

Gradle 0.9.x から Idea プラグインがそれなりに動くようになっていじってみてるんですけど、依存性 (dependencies) にライブラリを追加して IDEA の設定ファイルを生成し直す(「gradle idea」コマンド実行)と IDEA の設定があれこれリセットされてしまう…

CharSet

Sun の JDK (バージョン 1.6.0_01)で利用可能な CharSet (java.nio.charset.Charset) を列挙。 160個ありました。次のようなコードで利用可能な CharSet を列挙できます: import java.util.Map; import java.nio.charset.Charset ... Map<String, Charset> map = Charset.a</string,>…

@Override アノテーション

『Effective Java 第2版 (The Java Series)』を読むまで知らなかったのですが、Java SE 5 から Java SE 6 に移行する際に @Override アノテーション*1の使用方法が変更になっていたそうで。一言で言えば、「インターフェースに宣言されているメソッドをオー…

Java SE 6 のコレクション・フレームワークのメソッド (6) : Map, SortedMap, NavigableMap

前回までに引き続き、今回からは Map インターフェースとそのサブインターフェースを(一覧)。メソッドは独断と偏見で幾つかにカテゴリー分けしてます: エントリーなどの取得:get() や keySet() など エントリーの追加:put() など エントリーの削除:rem…

Java SE 6 のコレクション・フレームワークのメソッド (7) : ConcurrentMap, ConcurrentNavigableMap

あまり使ったことないので、メソッドの宣言だけ載せておきます(一覧)。メソッドは独断と偏見で幾つかにカテゴリー分けしてます: エントリーなどの取得:get() や keySet() など エントリーの追加:put() など エントリーの削除:remove() など その他注意…

Java SE 6 のコレクション・フレームワークのメソッド (5) : BlockingQueue, BlockingDeque

今回は BlockingQueue と BlockingDeque の2つ(一覧)。メソッドは独断と偏見で幾つかにカテゴリー分けしてます: 集合としてのメソッド:size() や iterator() など 要素の挿入:add(), offer() など 要素の削除:remove(), poll() など 要素の検査:eleme…

Java SE 6 コレクション・フレームワークのメソッド (4) : LIFO Queue を考える

前回、「Queue インターフェースは FIFO キューだけでなく、LIFO キューとしても使えるけど、実装がない」と書きました。 今回は LIFO キューとして使える Queue の実装を考えてみましょう(一覧)。 クラス名は LIFOQueue とします。一から作るのは大変ので…

Java SE 6 コレクション・フレームワークのメソッド (3) : Queue, Deque

今回は Queue と Deque の2つ(一覧)。メソッドは独断と偏見で幾つかにカテゴリー分けしてます: 集合としてのメソッド:size() や iterator() など 要素の挿入:add(), offer() など 要素の削除:remove(), poll() など 要素の検査:element(), peek() な…

Java SE 6 コレクション・フレームワークのメソッド (2) : Set, SortedSet, NavigableSet

今回は Set, SortedSet, NavigableSet の3つ(一覧)。 メソッドは独断と偏見で幾つかにカテゴリー分けしてます: 要素の取得:iterator() や getter メソッドなど 要素の追加:add() や addAll() など 要素の削除:remove() や clear() など 要素の削除&取…

Java SE 6 コレクション・フレームワークのメソッド (1) : Collection, List

以前に Java SE 6 のコレクション・フレームワークに定義されているインターフェース群の型階層を簡単に見ました。 それに引き続き、今回から何回かにわたって、各インターフェースの拡張の際に追加されているメソッドを見ていきます(一覧)。メソッドは独…

Java SE 6 のコレクション・フレームワーク (2) Map 編

Java SE 6 のコレクション・フレームワーク (Collection Framework) に含まれる java.util.Map のサブタイプのクラス図(一覧)。 緑の枠中に描いてあるのは各インターフェースの実装クラスです*1。 インターフェースもクラスも java.util パッケージと java…

Java SE 6 のコレクション・フレームワーク (1) Collection 編

Java SE 6 のコレクション・フレームワーク (Collection Framework) に含まれる java.util.Collection のサブタイプのクラス図(一覧)。 緑の枠中に描いてあるのは各インターフェースの実装クラスです*1。 インターフェースもクラスも java.util パッケージ…