¼Ò¼³°°ÀºÀÚ¹Ù1ºÎ  3Àå. The Class  ¸Þ¼­µå¿Í Á¢±ÙÁ¦¾î  

3.6 ¸Þ¼­µå¿Í Á¢±ÙÁ¦¾îÀÇ È°¿ë

3.6.1 ¸Þ¼­µå¸¦ ÀÌ¿ëÇÑ Á¢±ÙÁ¦¾î

 Á¢±ÙÁ¦¾î ¹®Á¦¿¡ À־ ¿ì¸®´Â ¾ÆÁ÷±îÁö private¿¡ ¾î¶»°Ô Á¢±ÙÇÏ´ÂÁö ¾ð±ÞÇÏÁö ¾Ê¾Ò½À´Ï´Ù. ´Ü¼øÈ÷ ¸Þ¼­µå¸¦ ÀÌ¿ë ÇÑ´Ù°í¸¸ ÇßÀ» »Ó ´õ ÀÌ»óÀÇ ¼³¸íµµ ¾ø¾ú½À´Ï´Ù. ÀÌ Àå¿¡¼­´Â ¾î¶»°Ô ¸Þ¼­µå¸¦ ÀÌ¿ëÇØ¼­ private ¸â¹ö Çʵ忡 Á¢±ÙÇÏ¸ç ¾î¶»°Ô private¸â¹ö ÇʵåÀÇ °ªÀ» ¿ÜºÎ·Î Àü´Þ ÇÏ´ÂÁö¿¡ ´ëÇØ¼­ ¹è¿ö º¸µµ·Ï ÇÏÁÒ. ±âº»¿ø¸®´Â ¿ÜºÎ·ÎºÎÅÍ µé¾î¿À´Â µ¥ÀÌÅ͸¦ ¸Å°³º¯¼ö¸¦ ÅëÇØ¼­ ¹Þ¾Æ¼­ ³»ºÎÀÇ ¸â¹ö º¯¼ö¿¡ Àü´ÞÇØ ÁÖ´Â ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ¹ÛÀ¸·Î ³»º¸³¾ ¶§´Â ¸Þ¼­µåÀÇ ¸®ÅÏÀ» ÅëÇØ¼­ ¿ÜºÎ·Î Àü´ÞÇϰí ÀÖ½À´Ï´Ù.

 

 

3.6.2 privateÀÇ Á¢±Ù

 ÀÏ´Ü, Á¢±ÙÁ¦¾î°¡ ¹«¾ùÀÎÁö ¾î¶°ÇÑ ¹®Á¦¸¦ Á¦±âÇß´ÂÁö Çѹø »ó±âÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù. ´Ù½Ã Çѹø ´õ Á¤¸®ÇÏÀÚ¸é, Ŭ·¡½º Ű¿öµå·Î »õ·Î¿î µ¥ÀÌÅÍ Å¸ÀÔÀ» Çϳª ¸¸µå´Â °úÁ¤¿¡¼­ ¸â¹ö¿¡ Á¢±Ù ÁöÁ¤ÀÚ¸¦ ¸í½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¶§ ¿ì¸®´Â ¸ðµÎ publicÀ¸·Î Á¢±Ù ÁöÁ¤ÀÚ¸¦ ºÎ¿©ÇÑ ´ÙÀ½, ±× »õ·Î¿î µ¥ÀÌÅÍ Å¸ÀÔÀÇ À̸§À» ºÎ¿©ÇÑ ÈÄ new¿¬»êÀÚ¸¦ ÀÌ¿ëÇÏ¿© ¸Þ¸ð¸®¸¦ »ý¼ºÇÏ¿´½À´Ï´Ù. ¸Þ¸ð¸®¸¦ »ý¼ºÇÑ ÈÄ Á¡(.)À¸·Î ¸ðµÎ Á¢±Ù °¡´ÉÇß½À´Ï´Ù. ÇÏÁö¸¸ privateÀ¸·Î µÇ¾î ÀÖ´Â Çʵ忡 Á¡(.)Âï°í Á¢±ÙÇÒ ¶§ ÄÄÆÄÀϵµ µÇÁö ¾Ê´Â Ȳ´çÇÑ ¿¡·¯¸¦ °æÇèÇß½À´Ï´Ù. À̶§ ¡°¾î¶»°Ô Á¢±Ù ÇÒ±î¿ä¡±°¡ ÀÌÀåÀÇ ÁÖÁ¦ÀÔ´Ï´Ù.

 

¸Þ¼­µå·Î Á¢±ÙÇÑ´Ù°í ÇßÀ¸´Ï ÀÏ´ÜÀº ¸Þ¼­µå´Â publicÀ¸·Î µÇ¾î ÀÖ¾î¾ß °ÚÁÒ. ±× ¸Þ¼­µå¸¦ ÅëÇØ¼­ ¿ÜºÎ¿¡¼­ ¹ÞÀº µ¥ÀÌÅ͸¦ Ŭ·¡½º ³»ºÎ·Î Àü´ÞÇÏ´Â ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ±×¸®°í Ŭ·¡½º ³»ºÎ¿¡ ÀÖ´Â ¸â¹ö ÇʵåÀÇ °ªÀ» ¿ÜºÎ·Î Àü´ÞÇϱâ À§Çؼ­´Â ´Ù½Ã ´Ù¸¥ ¸Þ¼­µå¸¦ ¸¸µé¾î¼­ »ç¿ë ÇØ¾ß°ÚÁÒ. À̶§´Â ¸®ÅÏÀÇ ¹æ½ÄÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹Á¦¸¦ Çѹø »ìÆìº¸ÁÒ. 

 

Test5.java(Ŭ·¡½ºÀÇ private ¸â¹ö Çʵ忡 Á¢±ÙÇϱâ À§ÇÑ ¹æ¹ýÀ» Á¦½ÃÇÏ´Â ¿¹Á¦)

public class Test5{

             private int top_secret;

             public void setMyTop(int x){

                           top_secret = x;

             }

             public int getTop(){

                           return top_secret;

             }

}

 

Test5.java(Ŭ·¡½ºÀÇ private ¸â¹ö Çʵ忡 Á¢±ÙÇϱâ À§ÇÑ ¹æ¹ýÀ» Á¦½ÃÇÏ´Â ¿¹Á¦)

public class Test5Main {

             public static void main(String[] args) {

                           int s;

                           Test5 t5 = new Test5();

                           t5.setMyTop(1000);

                           s = t5.getTop();

                           System.out.println(s);

                           System.out.println(t5.getTop());

             }

}

°á°ú

C:\examples\1.Ŭ·¡½ºÀÇ °³³ä>javac Test5.java

C:\examples\1.Ŭ·¡½ºÀÇ °³³ä>javac Test5Main.java

C:\examples\1.Ŭ·¡½ºÀÇ °³³ä>java Test5Main

private¸â¹öÀÇ °ªÀº:1000

private¸â¹öÀÇ °ªÀº:1000

s, t5.getTop() µÎ°¡Áö¸¦ Ãâ·ÂÇÑ ÀÌÀ¯´Â ¸Þ¼­µå°¡ º¯¼öÀÇ ¿ªÇÒÀ» ÇÑ´Ù´Â °ÍÀ» Çѹø´õ ¸í½ÃÇϱâ À§Çؼ­ÀÔ´Ï´Ù.

 

 

ÀÌ ¿¹Á¦¸¦ Çѹø º¸ÁÒ. »õ·Î¿î µ¥ÀÌÅÍ Å¸ÀÔ Test5°¡ ¸¸µé¾îÁ³½À´Ï´Ù. Test5¶ó´Â »õ·Î¿î µ¥ÀÌÅÍ Å¸ÀÔÀº 3°³ÀÇ ¸â¹ö¸¦ °¡Áö°í ÀÖ½À´Ï´Ù. 1°³ÀÇ private ¸â¹öÇʵå¿Í 2°³ÀÇ public ¸Þ¼­µå¸¦ Áö´Ï°í ÀÖ½À´Ï´Ù. private ¸â¹öÇʵåÀ̱⠶§¹®¿¡ Test5Main¿¡¼­ Test5µ¥ÀÌÅÍŸÀÔÀÌ t5¶ó´Â À̸§À¸·Î new¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ¸Þ¸ð¸®¸¦ »ý¼ºÇÑ ÈÄ Test5 private ¸â¹öÇʵ忡 µ¥ÀÌÅͰªÀ» ³Ö±â À§Çؼ­ ¸Þ¼­µå¸¦ ÀÌ¿ëÇϰí ÀÖ½À´Ï´Ù. ÀÌ ¶§ private¸â¹öÇʵ忡 Á¡(.)Âï°í Á¢±ÙÇÑ´Ù¸é ÄÄÆÄÀϵµ µÇÁö ¾Ê°ÚÁÒ. ´ç¿¬ÇÑ ¿¡·¯¶ø´Ï´Ù. ±×·¡¼­ public ¸Þ¼­µå¸¦ ÅëÇØ¼­ Á¢±ÙÇϰí ÀÖ½À´Ï´Ù.

 

ÀÌÁ¦ public ¸Þ¼­µå¸¦ »ìÆìº¸ÁÒ. ¸Þ¼­µåÀÇ À̸§Àº Á¦ ¸¶À½´ë·Î ÁÖ¾ú´Âµ¥ óÀ½ ¹è¿ï ¶§´Â ÁÖ°í ½ÍÀº À̸§À» ÁֽʽÿÀ. ³ªÁß¿¡´Â ÁÁÀº À̸§À» Áֽðí¿ä. ±×¸®°í Á» ¹è¿ì°í ³ª¸é ¾î¶² ±ÔÄ¢¿¡ ÀÇÇØ¼­ À̸§À» ÁØ´ä´Ï´Ù. ÀÚ! ÀÌÁ¦ À̸§ºÎÅÍ »ìÆìº¸ÁÒ. À̸§Àº ÀÌ·¸°Ô µË´Ï´Ù.

 

n         public void setMyTop(int x)

n         public int getTop()

 

ÀÌ µÎ ¸Þ¼­µåÀÇ ¿ªÇÒ¿¡ ´ëÇØ¼­ ¾Ë¾Æº¸ÁÒ. setMyTopÀ̶ó´Â ¸â¹ö¸Þ¼­µå´Â µ¥ÀÌÅÍ Å¸ÀÔÀÌ voidÀÔ´Ï´Ù. À̰ÍÀº ¸Þ¼­µå°¡ Àϸ¸ÇÏ°í ¸®ÅÏÀ» ÇÏÁö ¾ÊÀ» ¶§ voidÇüÀ» »ç¿ëÇÕ´Ï´Ù. ±×¸®°í ÇϳªÀÇ ¸Å°³º¯¼ö¸¦ ¿ÜºÎ·ÎºÎÅÍ ¹ÞÀ» °ÍÀÔ´Ï´Ù. ±×°ÍÀº x¿¡ µé¾î°¡ ÀÖ°ÚÁÒ. ´ÙÀ½ °ÍÀ» º¸ÁÒ. getTopÀº ¸Å°³º¯¼ö°¡ ¾ø½À´Ï´Ù. ¸Å°³º¯¼ö¸¦ ÁÖÁö ¾Ê¾Æµµ ÀÏÀ» ÇÏÁö¸¸ ÀÌ ¸Þ¼­µå´Â ³»ºÎ¿¡¼­ ¹º°¡¸¦ ¸®ÅÏÇϰí ÀÖ½À´Ï´Ù.

 

setMyTop¸Þ¼­µå´Â ¸Å°³º¯¼ö x¸¦ ÀÌ¿ëÇÏ¿© ¿ÜºÎ¿¡¼­ µé¾î¿À´Â µ¥ÀÌÅ͸¦ ³Ñ°Ü¹Þ¾Æ¼­ Ŭ·¡½º ³»ºÎÀÇ ¸â¹ö Çʵ忡 ³Ö¾îÁÖ°í ÀÖ½À´Ï´Ù. ±×¸®°í getTopÀº returnÀ̶ó´Â Ư¼öÇÑ ¸Þ¼­µåÀÇ ±â¹ýÀ» ÀÌ¿ëÇÏ¿© ¿ÜºÎ·Î ´øÁ®ÁÖ°í ÀÖ½À´Ï´Ù. ±×¸®°í Test5µ¥ÀÌÅÍŸÀÔÀº ¸Þ¸ð¸®°¡ »ý¼ºµÈ ÈÄ public¸Þ¼­µå 2°³¸¦ »ç¿ëÇÏ¿© ³»ºÎÀÇ private¸â¹öÇʵ忡 °ªÀ» ³Ö°í ±×¸®°í °ªÀ» ¹Þ¾Æ³»´Â ¿ªÇÒÀ» ¼öÇàÇϰí ÀÖ½À´Ï´Ù.

 

 

3.6.3 °á·Ð

private¸â¹öÇʵ忡 Á÷Á¢ Á¢±ÙÀ» ÇÒ ¼ö ¾ø±â ¶§¹®¿¡ ¿ÜºÎ·ÎºÎÅÍ µé¾î¿À´Â µ¥ÀÌÅ͸¦ ¸Å°³º¯¼ö¸¦ ÅëÇØ¼­ ³»ºÎÀÇ ¸â¹ö º¯¼ö¿¡ Àü´ÞÇØ ÁÖ¾ú½À´Ï´Ù. ¿ÜºÎ·Î ³»º¸³¾ ¶§´Â ¸Þ¼­µåÀÇ ¸®ÅÏÀ» ÅëÇØ¼­ Àü´ÞÇÏ¿´½À´Ï´Ù. ÀÌ·¸°Ô ÇÑ´Ù¸é private¸â¹ö º¯¼öÀÇ Á¢±ÙÀº ¾ÆÁÖ ¿ì¾ÆÇÏ°Ô ÇØ°á µÇ¾ú½À´Ï´Ù. ±×·±µ¥ ÀÌ ºÎºÐ¿¡¼­ ÀÌ·± Áú¹®ÀÌ ³ª¿Ã ¼ö ÀÖÀ» °Ì´Ï´Ù. ¾î¶»°Ô public ¸Þ¼­µå´Â private¸â¹öÇʵ带 ¹Ù·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï±î¶ó´Â Áú¹®ÀÌ ¾Æ´Ò±î¿ä. ±×°ÍÀº ¾ÆÁÖ ´Ü¼øÇÑ ´ë´äÀÌ ÀÖ½À´Ï´Ù. ÀÏ´Ü Å¬·¡½º³»ÀÇ ¸â¹ö´Â private pubicµûÁöÁö ¾Ê½À´Ï´Ù. ±×¸®°í ¸â¹ö³¢¸®´Â °øÀ¯°¡ °¡´ÉÇÕ´Ï´Ù. ±×·¡¼­ ÀÌ·± ¸»À» ÇÑÀûÀÌ ÀÖ½À´Ï´Ù. private°ú publicÀÇ Á¢±ÙÁ¦¾î´Â Á¡(.)Âï°í Á¢±ÙÀÇ ¹®Á¦ÀÌ´Ù¶ó´Â ¸» ±â¾ï ÇϽôÂÁö¿ä.

 

µðÀÚÀΟÀÓ°ú ½ÇÇàŸÀÓÀº ¹Ýµå½Ã ±¸ºÐÁö¾î¾ß ÇÑ´Ù¶ó´Â ¸»À» ¾ð±ÞÇÑÀûÀÌ ÀÖ½À´Ï´Ù. »õ·Î¿î µ¥ÀÌÅÍŸÀÔÀ» ¸¸µå´Â ¼ø°£Àº Ŭ·¡½º µðÀÚÀΟÀÓÀÔ´Ï´Ù. ±×¸®°í ¸¸µé¾îÁø µ¥ÀÌÅÍŸÀÔ¿¡ º¯¼ö¸¦ ÁöÁ¤ÇÏ°í ¸Þ¸ð¸®¸¦ »ý¼ºÇÏ¿© »ç¿ëÇÏ´Â °ÍÀº ½ÇÇàŸÀÓÀÔ´Ï´Ù. ¾ÆÁÖ Áß¿äÇÑ ¹®Á¦¶ó°í ÀÌ¹Ì ÁöÀûÇÑ ¹Ù°¡ ÀÖ½À´Ï´Ù. À̰ÍÀº Á¢±ÙÁ¦¾î¸¦ ÇÒ ¼ö ÀÖ´Â ½ÃÁ¡ÀÌ ¾ðÁ¦ÀÎÁö¸¦ ÆÇ´Ü ÇÒ ¼ö ÀÖ½À´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù1ºÎ
ÀúÀÚ:ÃÖ¿µ°ü