Swingプログラミング3

ツールバーの実装を終了。割と使いやすいのが作れたような。ただ、いいアイコンがない。どうしよう。
JavaはCでいうところの関数ポインタが使えなかったので、関数名(この場合はメソッド名)とオブジェクトを渡して実行を行った。このときに使うのがMethodクラスのinvokeメソッドである。これでほぼ同じ事を実現できるようになった。しかし、これってオブジェクト指向プログラミングの文法に反していないのだろうか?少し心配だ。
ところで、Observableなクラス、たとえばJButtonなんかにListenerを追加する際に無名クラスとか内部クラスを使って追加しているのだけど、これってModelViewControllerアーキテクチャのViewとControllerが分割されていないことになっているような気がする。でも、このControllerってこのView専用のControllerだし。たしかに別のObservableクラスにも同じListenerを設定するならわかるけど、そういうことってあまりないし。家に帰ってもう少し調べないといけないな。