リスナー
日本語 | 聞く人 |
英語 | listener |
ふりがな | りすなー |
フリガナ | リスナー |
何かの処理を依頼され、その処理を実行するクラスもしくはメソッド。
「全体の機能」に対して「一部の処理」だけを変更できるようにする仕組みに利用される。
リスナークラスを「全体の機能」に登録しておくことで、「一部の処理」が必要になった時にリスナークラスのメソッドが呼ばれ、リスナークラス独自の処理が行われる。
「全体の機能」の「言うことを聞く」ため「リスナー」と呼ばれる。
ほとんどの場合「リスナー」とは「イベントリスナー」のことを指す。
これは、リスナーのほとんどの場合イベントを処理するために使用されているためである。
広義には「ハンドラ」と同じ意味である。
ハンドラは広範囲に使用され、昔から使われている単語であるが、リスナーはほとんどの場合イベントの処理に使用され、比較的新しい単語である。
「全体の機能」に対して「一部の処理」だけを変更できるようにする仕組みに利用される。
リスナークラスを「全体の機能」に登録しておくことで、「一部の処理」が必要になった時にリスナークラスのメソッドが呼ばれ、リスナークラス独自の処理が行われる。
「全体の機能」の「言うことを聞く」ため「リスナー」と呼ばれる。
ほとんどの場合「リスナー」とは「イベントリスナー」のことを指す。
これは、リスナーのほとんどの場合イベントを処理するために使用されているためである。
広義には「ハンドラ」と同じ意味である。
ハンドラは広範囲に使用され、昔から使われている単語であるが、リスナーはほとんどの場合イベントの処理に使用され、比較的新しい単語である。
参考サイト
// Sample.java
import java.applet.Applet;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
/**
* Eclipseで試す場合には、「デバッグ」の
* 「Java Applet」として新規に作成してください。
*/
public class Sample extends Applet
{
/**
* アプレットが起動した時に呼ばれます。
*/
public void init()
{
System.out.println( "Sample#init()" );
// マウスイベントを受け取るイベントリスナーを追加します。
addMouseListener( new NormalMouseListener() );
}
/**
* アプレットが閉じられた時に呼ばれます。
*/
public void destroy()
{
System.out.println( "Sample#destroy()" );
}
/**
* アプレットがアクティブになった時に呼ばれます。
*/
public void start()
{
System.out.println( "Sample#start()" );
}
/**
* アプレットが非アクティブになった時に呼ばれます。
*/
public void stop()
{
System.out.println( "Sample#stop()" );
}
}
/**
* マウスイベントリスナー
* これが、マウスイベントを受け取るイベントリスナーです。
*/
class NormalMouseListener implements MouseListener
{
/**
* クリックされました。
*/
public void mouseClicked( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseClicked()" );
}
/**
* 押されました。
*/
public void mousePressed( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mousePressed()" );
}
/**
* 離されました。
*/
public void mouseReleased( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseReleased()" );
}
/**
* マウスカーソルが入りました。
*/
public void mouseEntered( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseEntered()" );
}
/**
* マウスカーソルが出ました。
*/
public void mouseExited( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseExited()" );
}
}
import java.applet.Applet;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
/**
* Eclipseで試す場合には、「デバッグ」の
* 「Java Applet」として新規に作成してください。
*/
public class Sample extends Applet
{
/**
* アプレットが起動した時に呼ばれます。
*/
public void init()
{
System.out.println( "Sample#init()" );
// マウスイベントを受け取るイベントリスナーを追加します。
addMouseListener( new NormalMouseListener() );
}
/**
* アプレットが閉じられた時に呼ばれます。
*/
public void destroy()
{
System.out.println( "Sample#destroy()" );
}
/**
* アプレットがアクティブになった時に呼ばれます。
*/
public void start()
{
System.out.println( "Sample#start()" );
}
/**
* アプレットが非アクティブになった時に呼ばれます。
*/
public void stop()
{
System.out.println( "Sample#stop()" );
}
}
/**
* マウスイベントリスナー
* これが、マウスイベントを受け取るイベントリスナーです。
*/
class NormalMouseListener implements MouseListener
{
/**
* クリックされました。
*/
public void mouseClicked( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseClicked()" );
}
/**
* 押されました。
*/
public void mousePressed( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mousePressed()" );
}
/**
* 離されました。
*/
public void mouseReleased( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseReleased()" );
}
/**
* マウスカーソルが入りました。
*/
public void mouseEntered( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseEntered()" );
}
/**
* マウスカーソルが出ました。
*/
public void mouseExited( MouseEvent mouseEvent )
{
System.out.println( "NormalMouseListener#mouseExited()" );
}
}
// Sample.java import java.applet.Applet; import java.awt.event.MouseListener; import java.awt.event.MouseEvent; /** * Eclipseで試す場合には、「デバッグ」の * 「Java Applet」として新規に作成してください。 */ public class Sample extends Applet { /** * アプレットが起動した時に呼ばれます。 */ public void init() { System.out.println( "Sample#init()" ); // マウスイベントを受け取るイベントリスナーを追加します。 addMouseListener( new NormalMouseListener() ); } /** * アプレットが閉じられた時に呼ばれます。 */ public void destroy() { System.out.println( "Sample#destroy()" ); } /** * アプレットがアクティブになった時に呼ばれます。 */ public void start() { System.out.println( "Sample#start()" ); } /** * アプレットが非アクティブになった時に呼ばれます。 */ public void stop() { System.out.println( "Sample#stop()" ); } } /** * マウスイベントリスナー * これが、マウスイベントを受け取るイベントリスナーです。 */ class NormalMouseListener implements MouseListener { /** * クリックされました。 */ public void mouseClicked( MouseEvent mouseEvent ) { System.out.println( "NormalMouseListener#mouseClicked()" ); } /** * 押されました。 */ public void mousePressed( MouseEvent mouseEvent ) { System.out.println( "NormalMouseListener#mousePressed()" ); } /** * 離されました。 */ public void mouseReleased( MouseEvent mouseEvent ) { System.out.println( "NormalMouseListener#mouseReleased()" ); } /** * マウスカーソルが入りました。 */ public void mouseEntered( MouseEvent mouseEvent ) { System.out.println( "NormalMouseListener#mouseEntered()" ); } /** * マウスカーソルが出ました。 */ public void mouseExited( MouseEvent mouseEvent ) { System.out.println( "NormalMouseListener#mouseExited()" ); } }