ÀÎÅÍÆäÀ̽º(Interface)¶õ Ŭ·¡½ºÀÇ ÇÑ Á¾·ùÀÔ´Ï´Ù. ¹°·Ð, Ŭ·¡½º¶ó°í´Â ÇÏÁö¸¸ Ŭ·¡½º¶ó°í Çϱ⿡´Â ³Ê¹«³ª ÇãÁ¢ÇÑ ÇüŸ¦ °¡Áö°í ÀÖ½À´Ï´Ù. Áï, Ŭ·¡½ºÀÇ »À´ë¸¸À» °¡Áö°í ÀÖ´Â °ÍÀÌ ¹Ù·Î ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù. ±×·¡¼ ÀÎÅÍÆäÀ̽º¶ó°í ÇÏ´ÂÁöµµ ¸ð¸£°Ú½À´Ï´Ù. ¸ÕÀú ÀÎÅÍÆäÀ̽ºÀÇ ±¸¼º¿ä¼ÒºÎÅÍ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
|
ÀÎÅÍÆäÀ̽ºÀÇ ±¸¼º¿ä¼Ò |
|
¸Þ¼µå(Method) ¼Ó¼º(Property) À̺¥Æ®(Event) Àε¦¼(Indexer) |
À§ÀÇ ¿ä¼ÒµéÀº ÀÎÅÍÆäÀ̽ºÀÇ ±¸¼º¿ä¼Ò·Î Æ÷Ç﵃ ¼ö ÀÖ´Â ¿ä¼ÒµéÀÔ´Ï´Ù. ÇÏÁö¸¸ ÀϹÝÀûÀÎ ¸Þ¼µå, ¼Ó¼º, À̺¥Æ®, Àε¦¼¿Í ´Þ¸® ÇÁ·ÎÅäŸÀÔ¸¸À» ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÁ·ÎÅäŸÀÔÀ̶õ ¼±¾ðºÎ¸¸ Á¸ÀçÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. Áï, ÀÎÅÍÆäÀ̽º ³»¿¡¼ÀÇ ¸Þ¼µå, ¼Ó¼º, Àε¦¼´Â ¸öüºÎºÐÀÌ ¾øÀ¸¸ç, À̺¥Æ®´Â ´ÜÁö »ç¿ëµÉ À̺¥Æ®¸¦ ¼±¾ð¸¸ ÇØ µÎ´Â °ÍÀÔ´Ï´Ù. °¢°¢ÀÇ ÇÁ·ÎÅäŸÀÔÀÇ ¿¹´Â ´ÙÀ½°ú °°½À´Ï´Ù.
|
ÀÎÅÍÆäÀ̽ºÀÇ ±¸¼º¿ä¼ÒµéÀ» º¸¿©ÁÖ´Â ¿¹ |
|
public delegate void StringListEvent(IStringList sender); public interface IStringList{ void Add(string s);//¸Þ¼µå int Count { get; set; }//¼Ó¼º event StringListEvent Changed;//À̺¥Æ® string this[int index] { get; set; }//Àε¦¼ } |
Àε¦¼°¡ ÀÖÁö¸¸ À妽ºÀÇ ±¸ÇöºÎ´Â Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. À̰ÍÀº ¸Þ¼µå, ¼Ó¼º¿¡µµ ¸¶Âù°¡Áö·Î Àû¿ëµË´Ï´Ù. ±×¸®°í À̺¥Æ®´Â º°´Ù¸¥ °ÍÀÌ ¾øÀ¸¸ç ´ÜÁö À̺¥Æ®ÀÇ ¼±¾ð¸¸ Çϳª Á¸ÀçÇÒ »ÓÀÔ´Ï´Ù. ÀÌ·¯ÇÑ ÇÁ·ÎÅäŸÀÔ¸¸À¸·Î´Â ¾Æ¹«°Íµµ ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÎÅÍÆäÀ̽ºµµ Ŭ·¡½º¶ó°í ÇÑ´Ù¸é °´Ã¼»ý¼ºÀ» ÁÖ¸ñÀûÀ¸·Î ÇÏÁö ¾Ê°Ú½À´Ï±î! ÇÏÁö¸¸ ÀÎÅÍÆäÀ̽º·Î´Â °´Ã¼¸¦ »ý¼ºÇÏ´Â ÀÏÀº »ó»óÁ¶Â÷ ÇÒ ¼ö ¾ø´Â ÀÏÀÔ´Ï´Ù. ±×¸®°í ¶Ç ÇϳªÀÇ Àǹ®µµ Á¦±âµË´Ï´Ù. ÀÎÅÍÆäÀ̽º°¡ Ŭ·¡½ºÀÇ ÇÑ Á¾·ù¶ó¸é Á¢±ÙÁöÁ¤ÀÚ°¡ Á¸ÀçÇÏÁö ¾ÊÀ»±î¿ä? ¸Â½À´Ï´Ù. Á¢±ÙÁöÁ¤ÀÚ°¡ Á¸ÀçÇÕ´Ï´Ù. ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç ¸â¹öÀÇ Á¢±ÙÀº ÀüºÎ publicÀ» ±âº»À¸·Î ÇÕ´Ï´Ù. ±×¸®°í ÀÎÅÍÆäÀ̽º ³»ÀÇ ¸â¹ö ¾Õ¿¡ abstract, public, protected, internal, private, virtual, override, static°ú °°Àº Ű¿öµåµéÀº »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
|
¢Ã ÀÎÅÍÆäÀ̽º(Interface)ÀÇ Æ¯Â¡I |
|
q ÀÎÅÍÆäÀ̽º ³»ÀÇ ¸â¹ö´Â ¸ðµÎ ¸öü°¡ ¾ø´Ù. q ÀÎÅׯäÀ̽ºÀÇ ¸â¹ö´Â µðÆúÆ®·Î ÀüºÎ publicÀÌ´Ù. q ³»ºÎ¿¡ Çʵ带 °¡Áú ¼ö ¾ø´Ù. q ¸â¹ö¿¡ ¾î¶°ÇÑ Á¢±ÙÀÚ, ÇÑÁ¤ÀÚµµ ºÙÀÌÁö ¾Ê´Â´Ù. |
ÀÎÅÍÆäÀ̽º´Â ÇÁ·Î±×·¥ÀÇ ±¸Á¶¿Í ¼³°è, ±×¸®°í ±¸Çö¿¡ ÀÖ¾î¼ ´ë´ÜÈ÷ Áß¿äÇÑ ºÎºÐÀ̶ó ÀÚ¼¼ÇÏ°Ô ¼³¸íÇÒ °ÍÀÔ´Ï´Ù. ±×·¡¼ ÀÚÄ© Áö·çÇØÁú ¿°·Á°¡ ÀÖÀ¸´Ï º¸´Ù °ü½ÉÀ» °¡Áö°í º¸½Ã±â ¹Ù¶ø´Ï´Ù.
| jabookÀúÀÚ¸íÇÔ |
|
Á¦¸ñ:¼Ò¼³°°ÀºC# Á¦5°ÀÇ ÀúÀÚ:ÃÖ¿µ°ü |