org.wegra.util
Class GenericMethod

java.lang.Object
  extended byorg.wegra.util.GenericMethod
All Implemented Interfaces:
java.lang.Runnable

public class GenericMethod
extends java.lang.Object
implements java.lang.Runnable

ÀÌ Å¬·¡½º´Â ƯÁ¤ °´Ã¼ÀÇ Æ¯Á¤ ¸Þ¼Òµå¸¦ ·±Å¸ÀÓ ½Ã¿¡ °áÁ¤ÇÏ¿© È£ÃâÇÒ ¼ö ÀÖ´Â ¸ÞÄ¿´ÏÁòÀ» Á¦°øÇÑ´Ù.

	class MyClass {
		private f( Object argument ) { ... }

		private class MyAction implements Runnable {
			Object fArgument;
			MyAction( Object argument ) {
				fArgument = argument;
			}
			public static void Run() {
				f( fArgument );
			}
		}

		void setupListener {
			notiffier.addListener( new MyAction("hello") );
		}
	}
 
À§ÀÇ ÄÚµå´Â ´ÙÀ½°ú °°ÀÌ ¹Ù²Ü ¼ö ÀÖ´Ù. class MyClass { private f( Object argument ) { ... } void setupListener{ notifier.addListener( new GenericMethod( this, "f", new Object[]{ "hello" } )); } }

Version:
1.0 (2001-08-31)
Author:
wegra (Bok-Youn Lee)

Nested Class Summary
static class GenericMethod.Test
          Å×½ºÆ®¿ë Ŭ·¡½º
 
Constructor Summary
GenericMethod(java.lang.Object receiver, java.lang.String method, java.lang.Object[] arguments)
          Ä¿¸àµå °´Ã¼¸¦ »ý¼ºÇÑ´Ù.
 
Method Summary
 void run()
          »ý¼ºÀÚ¿¡ ÁöÁ¤µÈ ÀÎÀÚ°ªÀ» »ç¿ëÇØ¼­ »ý¼ºÀÚ¿¡ ÁöÁ¤µÈ ¸Þ¼Òµå¸¦ È£ÃâÇÑ´Ù.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GenericMethod

public GenericMethod(java.lang.Object receiver,
                     java.lang.String method,
                     java.lang.Object[] arguments)
              throws java.lang.NoSuchMethodException,
                     java.lang.SecurityException
Ä¿¸àµå °´Ã¼¸¦ »ý¼ºÇÑ´Ù. ÀÌ °´Ã¼´Â ´Ù¾çÇÑ ÀÚ¹Ù ¸Þ¼Òµå¸¦ ½ÇÇà½Ãų ¼ö ÀÖ´Ù. run() ¿¡¼­´Â »ý¼ºÀÚ¿¡¼­ °Ç³× ¹ÞÀº ÀÎÀÚ¸¦ »ç¿ëÇØ¼­ ¸Þ¼Òµå¸¦ È£ÃâÇØÁØ´Ù.

Parameters:
receiver - ¸Þ½ÃÁö¸¦ ¹Þ´Â Ãø, Áï x.f(a, b) ¿¡¼­ÀÇ xÀÇ ÀÎÀÚ°ªÀ¸·Î this ¸¦ °Ç³×ÁÖ¸é ÀÚ½ÅÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼öµµ ÀÖ´Ù.
method - Ŭ·¡½ºÀÇ public ¸Þ¼ÒµåÀÇ À̸§À» ÁöÁ¤ÇÏ´Â ÀÎÀÚ·Î receiver °´Ã¼ÀÇ public ¸Þ¼Òµå¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. x.fffff(a, b) °¡ È£ÃâµÇ±æ ¿øÇÑ´Ù¸é "f" ¶ó°í ½áÁÖ¸é µÈ´Ù.
arguments - ¸Þ¼Òµå¿¡¼­ ÃëÇÒ ÀÎÁö·Î »ç¿ëµÇ´Â °´Ã¼ ¹è¿­ ¿ø½ÃÇü ŸÀÔÀÇ °æ¿ì Ç¥ÁØ ÀÚ¹Ù ·¦ÆÛ Ŭ·¡½ºµé·Î ·¦ÇεǾî¾ß ÇÑ´Ù.
Throws:
java.lang.NoSuchMethodException - ÁÖ¾îÁø À̸§ÀÇ ¸Þ¼Òµå°¡ Á¸ÀçÇÏÁö ¾Ê°Å³ª arguments ¿¡ ÁÖ¾îÁø ÀÎÀÚ ÇüµéÀ» ÃëÇÏ´Â ¸Þ¼Òµå°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì ¹ß»ýÇÑ´Ù.
java.lang.SecurityException - ÀÎÁõµÇÁö ¾ÊÀº ¾ÖÇø´°ú °°ÀÌ ÇöÀç ¾ÖÇø®ÄÉÀ̼ÇÀÌ ÀÎÆ®·Î½ºÆå¼Ç API¸¦ ¾²µµ·Ï Çã°¡¹ÞÁö ¸øÇÑ °æ¿ì
Method Detail

run

public void run()
»ý¼ºÀÚ¿¡ ÁöÁ¤µÈ ÀÎÀÚ°ªÀ» »ç¿ëÇØ¼­ »ý¼ºÀÚ¿¡ ÁöÁ¤µÈ ¸Þ¼Òµå¸¦ È£ÃâÇÑ´Ù.

Specified by:
run in interface java.lang.Runnable