11-2-5.ÇʵåÀÇ ÀçÁ¤ÀÇ

ºÎ¸ð·ÎºÎÅÍ »ó¼Ó¹ÞÀº ¸Þ¼­µå¸¦ ÀçÁ¤ÀÇÇϸé ÀÚ½ÄÀÇ µ¿ÀÛÀ» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. º° ½Ç¿ë¼ºÀº ¾øÁö¸¸ Çʵ嵵 ÀçÁ¤ÀÇÇÒ ¼ö ÀÖ´Ù. »ç¶÷¿¡°Ô´Â ÁֹιøÈ£°¡ ÀÖÁö¸¸ Çлý¿¡°Ô´Â ÇйøÀÌ ÀÖ´Ù. ÀÚ½Ä Å¬·¡½º¿¡¼­ ÇʵåÀÇ Àǹ̰¡ ´Þ¶óÁø´Ù¸é ¶È°°Àº À̸§À¸·Î ´Ù½Ã ¼±¾ðÇÏ¸é µÈ´Ù.

 

overridefield

class Human {

      int number;

     

      Human(int number) {

             this.number = number;

      }

     

      void intro() {

             System.out.println("ÁֹΠµî·Ï ¹øÈ£ : " + number);

      }

}

 

class Student extends Human {

      int number;

     

      Student(int junum, int stnum) {

             super(junum);

             this.number = stnum;

      }

     

      void intro() {

             System.out.println("ÁֹΠµî·Ï ¹øÈ£ : " + super.number + ", Çйø : " + number);

      }

}

 

class JavaTest {

      public static void main(String[] args) {

             Human kim = new Human(890102);

             kim.intro();

             Student lee = new Student(901231, 1206299);

             lee.intro();

      }

}

½ÇÇà°á°ú

ÁֹΠµî·Ï ¹øÈ£ : 890102

ÁֹΠµî·Ï ¹øÈ£ : 901231, Çйø : 1206299

 

ÀÌ ¿¹Á¦ÀÇ Human Ŭ·¡½º´Â number¶ó´Â Çʵ带 ¼±¾ðÇÏ¿© ÁֹΠ¹øÈ£¸¦ ÀúÀåÇÑ´Ù. HumanÀ¸·ÎºÎÅÍ ÆÄ»ýµÈ Student Ŭ·¡½ºµµ number¶ó´Â Çʵ带 »ó¼Ó¹Þ´Âµ¥ ÁֹΠ¹øÈ£º¸´Ù´Â ÇйøÀ» ÀúÀåÇÏ°í ½Í´Ù°í ÇÏÀÚ. ÀÌ °æ¿ì °°Àº À̸§À¸·Î number Çʵ带 ¶Ç ¼±¾ðÇÑ´Ù.

ÀÌÈÄ Student¿¡¼­ number¶ó´Â ¸íĪÀº ÀÚ½ÅÀÇ number¸¦ ÀǹÌÇÏ¸ç ºÎ¸ðÀÇ number´Â °¡·ÁÁø´Ù. ±×·¯³ª Àá½Ã °¡·ÁÁ® ÀÖÀ» »Ó »ó¼ÓÀº µÇ¹Ç·Î super.number ±¸¹®À¸·Î ºÎ¸ðÀÇ number Çʵ带 ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. main¿¡¼­ Human, Student µÎ °³ÀÇ °´Ã¼¸¦ ¼±¾ðÇÑ ÈÄ Ãâ·ÂÇØ º¸¾Ò´Ù. »ç¶÷Àº ÁֹΠ¹øÈ£¸¸ Ãâ·ÂÇÏÁö¸¸ ÇлýÀº Çйøµµ Ãâ·ÂÇÑ´Ù.

StudentÀÇ ¸Þ¼­µå¿¡¼­ ±×³É number ¶Ç´Â this.number´Â ÀÚ½ÅÀÇ number ÇʵåÀÎ ÇйøÀ» ÀǹÌÇϸç super.number´Â ºÎ¸ð·ÎºÎÅÍ »ó¼Ó¹ÞÀº number ÇʵåÀÎ ÁֹΠ¹øÈ£¸¦ ÀǹÌÇÑ´Ù. Çʵå ÀçÁ¤Àǵµ ¹®¹ýÀûÀ¸·Î °¡´ÉÇÏÁö¸¸ ¹Ù¶÷Á÷ÇÏÁö ¾Ê°í ÀϹÝÀûÀÌÁöµµ ¾Ê´Ù. ±»ÀÌ ¶È°°Àº À̸§À¸·Î Çʵ带 ÀçÁ¤ÀÇÇÏ´Â °Íº¸´Ù stnum µîÀÇ ´Ù¸¥ À̸§À¸·Î »õ·Î¿î Çʵ带 Ãß°¡ÇÏ´Â °ÍÀÌ ÀÚ¿¬½º·´´Ù.