#acl All: == イベントドリブン == GUI用いたプログラムは複数のスレッドで動作しています。 ボタンを押すなどのアクションやイベントに対して処理が行われます。 . {{attachment:event1.png}} イベントが発生するとその情報はイベントキューに入れられ、 イベントの内容に対応するイベントリスナに処理を委ねられます。 ---- === インターフェース === リスナを作成するにはインターフェースを利用します。 . インターフェースは実体の無いクラスと考えられます。 . インターフェースはクラス図では点線を使って表します。 . {{attachment:interface.png}} インターフェースでは、どのようなメソッドが必要かなどインターフェースだけが指定されています。 インターフェースを継承してクラスを作成するときには、 インターフェースで指定されているメソッドをすべて記述しなければなりません。 これを'''実装'''といいます。 ---- === 例 === 画像を表示するプログラムにマウスイベントを追加します。 作成するクラスはJPanelとmouseListenerの2つの親を持たなければなりません。 . {{attachment:event2.png}} . Javaではスーパークラスとして指定できるのは1つだけです。 . JPanelクラスを継承します。 . extends JPanel . インターフェースはスーパークラスとしての指定ではなく実装の指定をします。 . implements mouseListener