¼Ò¼³°°ÀºC#  Á¦2°­ÀÇ Å¬·¡½ºÀÇ ±âº»¹è°æ  09. »ó¼ÓÀÇ Àǹ̠ 

 

2.9 »ó¼ÓÀÇ ÀǹÌ

  

OOP °³³äÀÇ °¡Àå ±âº»ÀûÀÎ ¼ºÁúÀΠŬ·¡½º ³»¿¡ ¸Þ¼­µåÀÇ »ðÀÔ, Á¢±ÙÁ¦¾î¸¦ ¾Ë¾Æ º¸¾Ò½À´Ï´Ù. ÀÌ Àý¿¡¼­´Â »ó¼Ó¿¡ ´ëÇÏ¿© °£·«È÷ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. »ó¼ÓÀÇ ¼¼ºÎ»çÇ×µéÀº ´ÙÀ½ Àå¿¡¼­ ³íÇϰÚÁö¸¸ ÀÌ Àý¿¡¼­´Â »ó¼ÓÀÇ °£´ÜÇÑ °³³äÁ¤µµ¸¸À» ´Ù·çµµ·Ï ÇϰڽÀ´Ï´Ù.

 

»ó¼ÓÀÇ °³³äÀº ¸Þ¼­µå ¸¸Å­À̳ª ÆÄ°ÝÀûÀ̸ç Á¢±ÙÁ¦¾î¸¸Å­À̳ª ½Å¼±ÇÑ Ãæ°ÝÀ» ÁÖ´Â ÇÁ·Î±×·¥ ¾ð¾îÀÇ Çõ¸íÀÔ´Ï´Ù. ¸¸¾à, ¿©·¯ºÐÀÌ AŬ·¡½º¸¦ ¸¸µé¾î µÎ¾ú´Ù°í °¡Á¤ÇÏ°í ±×¸®°í ´Ù½Ã BŬ·¡½º¸¦ ¸¸µé·Á°í ÇÑ´Ù°í °¡Á¤ÇØ º¸ÁÒ. ±×·±µ¥ BŬ·¡½ºÀÇ ´ëºÎºÐÀÇ ±â´ÉÀº AŬ·¡½º¿¡ ÀÖ´Â °ÍÀ̰í AŬ·¡½º¸¦ ¾à°£¸¸ °íÄ¡¸é µÈ´Ù°í ÇÑ´Ù¸é ¾î¶»°Ô ÇϽðڽÀ´Ï±î? »ó¼ÓÀÌ ¾ø´Ù¸é ¿©·¯ºÐÀº ±× À¯¸íÇÑ Copy & Paste¸¦ »ç¿ëÇÏ¿© óÀ½ºÎÅÍ ´Ù½Ã BŬ·¡½º¸¦ ±¸ÇöÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù. »ó¼ÓÀº ÀÌ·¯ÇÑ ¸éÀ» ±ò²ûÇÏ°Ô ÇØ°áÇØ ÁÝ´Ï´Ù. AŬ·¡½º¸¦ »ó¼Ó ¹Þ¾Æ¼­ BÀÇ ¾à°£¸¸ ±¸ÇöÇÏ¸é µÇ´Ï±î¿ä. ´ÙÀ½ÀÇ ÇÁ·Î±×·¥Àº °¡Àå °£´ÜÇÑ »ó¼ÓÀÇ °³³äÀ» ¼³¸íÇϱâ À§ÇÑ ÄÚµåÀÔ´Ï´Ù.

 

&

InheritanceTest.cs

Ü °£´ÜÇÑ »ó¼ÓÀÇ ¿¹

using System;

public class A{

         public void SayAAA() { Console.WriteLine("A.SayAAA"); }

}

public class B : A{

         public void SayBBB() { Console.WriteLine("B.SayBBB"); }

}

public class InheritanceTest {

         static void Main() {

                   B b = new B();

                          b.SayAAA();// AŬ·¡½º¸¦ »ó¼ÓÇ߱⠶§¹®¿¡ AŬ·¡½ºÀÇ ¸Þ¼­µå »ç¿ë°¡´É

                          b.SayBBB();// BŬ·¡½º ÀÚ½ÅÀº ÀÚ½ÅÀÇ ¸Þ¼­µå »ç¿ë°¡´É

         }//main

}//class

C:\C#Example\02>csc InheritanceTest.cs

C:\C#Example\02>InheritanceTest

A.SayAAA

B.SayBBB

 

AŬ·¡½º¸¦ »ó¼ÓÇϱâ À§Çؼ­ ÄÝ·Ð(:) Ű¿öµå¸¦ »ç¿ëÇÏ¿© ´ÙÀ½°ú °°Àº ±¸¹®À¸·Î Ŭ·¡½º¸¦ ¼±¾ðÇÏ¿´½À´Ï´Ù.

 

n                  class B : A

 

±×¸®°í »ó¼Ó¹ÞÀº BŬ·¡½ºÀÇ °´Ã¼¸¦ ¸¸µé¾úÀ» ¶§ AŬ·¡½º¿¡ ÀÖ´ø SayAAA() ¸Þ¼­µå¿Í BŬ·¡½º ÀÚ½ÅÀÌ °¡Áö°í ÀÖ´ø SayBBB() ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. À̰ÍÀº BŬ·¡½º ÀÚü°¡ AŬ·¡½º¸¦ »ó¼ÓÇ߱⠶§¹®¿¡ AŬ·¡½ºÀÇ ¸ðµç ±â´ÉÀ» »ç¿ëÇÏ°í ±×¸®°í B Ŭ·¡½º¿¡¼­ Ãß°¡·Î ±¸ÇöÇÑ ¸Þ¼­µå ¶ÇÇÑ »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù.

 

»ó¼ÓÀ̶ó´Â °³³äÀº °ú°Å¿¡´Â »ó»óÇÒ ¼ö ¾ø¾ú´ø °³³äÀÔ´Ï´Ù. »ó¼ÓÀº ÇÁ·Î±×·¥ÀÇ ¿ª»ç¸¦ ¹Ù²Ù¾î ³õÀº ÁÖÀΰøÀÎ °ÍÀÔ´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºC# Á¦2°­ÀÇ
ÀúÀÚ:ÃÖ¿µ°ü