(!!) Why?? Procedure Language .vs. OOPL


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]

±Û¾´ÀÌ :Retiree 1998³â 3¿ù 05ÀÏ 11:49:11

In Reply to: [!]Polymorphism posted by ±è¿ìÁ¾ on 1998³â 3¿ù 04ÀÏ 18:36:22:

Á» ´õ ¾ð¾îÀÇ È帧À» µû¶ó¼­ ¾ê±â¸¦ ÇÏÁö¿ä.


1. ÇÁ·Î±×·¥ÀÇ ½ÇÇàÀº Ç×»ó ¸Þ¸ð¸®¿¡ Á¸À縦 ÇØ¾ß ÇÑ´Ù.
ÇÁ·Î±×·¥ ¼Ò½º¸¦ ÄÄÆÄÀÏ/¸µÅ©¸¦ Çϸé Code¿Í Data·Î Å©°Ô ³ª´©¾îÁø´Ù.
ÀÌ µÎ °³´Â ½ÇÇà½Ã¿¡ ƯÁ¤ ¸Þ¸ð¸® ÁÖ¼Ò ¿µ¿ª¿¡ ÀÖ°Ô µË´Ï´Ù.


»ùÇÃÀ» º¸Áö¿ä..
Parent polymorphism = new Child();
polymorphism.thisFunction();


ÄÄÆÄÀÏÀ» Çϸé Parent.thisFunction()°ú Child.thisFunction()Àº °¢°¢ ƯÁ¤ ÁÖ¼Ò¿¡ À§Ä¡ÇÏ°Ô µË´Ï´Ù.
*** (ŸÀÔ, °´Ã¼)°¡ °¡Àå Áß¿äÇÕ´Ï´Ù. ***


Procdure Language(C++¿¡¼­ CºÎºÐ)ÂÊ »ý°¢ÀÇ Æ²À» µû¸£¸é
thidFunction()À» È£ÃâÇÏ´Â °ÍÀº °ú¿¬ ¹«½¼ ŸÀÔÀΰ¡?
Parent TypeÀÔ´Ï´Ù. ±×·¸Áö¿ä....
±×·¯¹Ç·Î thisFunction()Àº Parent.thisFunction()ÀÇ ÁÖ¼Ò¸¦ È£ÃâÇÕ´Ï´Ù.


OOPL(Java, C++ÀÇ OOPLºÎºÐ)ÂÊ »ý°¢ÀÇ Æ²À» µû¸£¸é
thidFunction()À» È£ÃâÇÏ´Â °ÍÀº °ú¿¬ ¹«½¼ °´Ã¼Àΰ¡?
Child TypeÀÇ °´Ã¼ÀÔ´Ï´Ù.
±×·¯¹Ç·Î thisFunction()Àº Child.thisFunction()ÀÇ ÁÖ¼Ò¸¦ È£ÃâÇÕ´Ï´Ù.


-----
C++Àº À§ÀÇ µÎ °³ÀÇ ¸ðµç ±â´ÉÀ» ¼ö¿ëÇØ¾ß ÇÕ´Ï´Ù.
¿Ö³ÄÇÏ¸é ±âÁ¸ÀÇ C¹æ½Ä°ú »õ·Î¿î OOPLÀûÀÎ ºÎºÐÀ» ¸ðµÎ °¡Á®¾ß ÇϹǷÎ.


±×·¡¼­ C++¿¡¼­´Â virtualÀ̶ó´Â »õ·Î¿î Å°¿öµå¸¦ ¸¸µé¾î½À´Ï´Ù.
ÀÌ´Â C¹æ½Ä°ú OOPL¹æ½ÄÀ» ±¸º°Çؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Â Áß½ÉÀÔ´Ï´Ù.


ÀÚ¹Ù´Â OOPL¹æ½ÄÀ¸·Î ó¸®Çϵµ·Ï µÇ¾î ÀÖ½À´Ï´Ù.
-------
´ÙÇü¼ºÀ̶ó´Â °ÍÀº ¸ðµç OOPLÀÌ ±×·± °ÍÀº ¾Æ´Ï°ÚÁö¸¸,
Á¦°¡ ¾Æ´Â Çѵµ ³»¿¡¼­´Â ÇÔ¼ö¿¡ ´ëÇؼ­¸¸ Áö¿øÀ» ÇÕ´Ï´Ù.


À§ÀÇ »ùÇÿ¡¼­ nameÇʵå´Â ´ÙÇü¼ºÀûÀÎ ¿ä¼Ò¸¦ °¡ÁöÁö ¾Ê´Â´Ù´Â °ÍÀÔ´Ï´Ù.
thisFunction()À» È£ÃâÇÏ´Â ´ë½Å¿¡ nameÀ» Ãâ·ÂÀ» ÇØ º¸¼¼¿ä..


±×·³.
Retiree of THMA


´ÙÀ½ ±Ûµé:



À̾ ±Û¿Ã¸®±â(´äÇϱâ)

À̸§:
E-Mail:
Á¦¸ñ:
³»¿ë:
°ü·Ã URL(¼±ÅÃ):
URL Á¦¸ñ(¼±ÅÃ):
°ü·Ã À̹ÌÁö URL:


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]