| 1 | Á¢±ÙÁöÁ¤ÀÚ(private) |
|
¾Õ °ÁÂÀΠŬ·¡½º ¸¸µé±â¿¡¼ »ç¿ëÇÑ public°ú´Â ¾à°£ ´Ù¸¥ ¹æ½ÄÀ¸·Î °ÍÀÌ Çϳª Á¸ÀçÇÑ´Ù. ±×°ÍÀº int a¶ó´Â º¯¼ö¾Õ¿¡ Á¸ÀçÇÏ´Â privateÀ̶ó´Â Ű¿öµåÀÌ´Ù. ÀÌ Å°¿öµåÀÇ ¿ëµµ´Â °£´ÜÇÏ´Ù. Á÷Á¢ Á¢±ÙÀÇ Àǹ̸¦ ´ã°í ÀÖ´Ù. ±×°ÍÀº ¹Ù·Î NewTopÀ̶ó´Â Ŭ·¡½º³»ÀÇ º¯¼öµéÀÌ publicÀ¸·Î µÇ¾î ÀÖ´Ù¸é NewTopÀÇ °´Ã¼ t¿¡¼ t.a°¡ °¡´ÉÇÏ´Ù. ÇÏÁö¸¸ privateÀ¸·Î µÇ¾î ÀÖ´Ù¸é ¹Ýµå½Ã t.a=3À̶ó´Â °ÍÀ» »ç¿ëÇÏ¸é ¿¡·¯¸¦ ¹ß»ýÇÑ´Ù. À̰ÍÀÇ Àǹ̴ °´Ã¼º¯¼ö¿¡ Á¡(.)À» Âï°í Á¢±ÙÇÒ ¼ö Àִ°¡ ¾ø´Â°¡ÀÇ ¹®Á¦ÀÌ´Ù. privateÀ¸·Î µÇ¾î ÀÖ´Ù¸é ¹«Á¶°ÇÀûÀ¸·Î Á¢±ÙÇÒ ¼ö ¾ø´Ù. ±×·¸´Ù¸é ¾î¶»°Ô Á¢±ÙÇÒ ¼ö ÀÖÀ»±î?? ¾Æ·¡ÀÇ ¿¹´Â Á¢±Ù ¿¡·¯¸¦ ³ªÅ¸³» ÁÖ°í ÀÖ´Ù. privateÀ¸·Î Ŭ·¡½º ³»ÀÇ º¯¼öµéÀÌ ¼±¾ðµÇ¾î Àִµ¥ °´Ã¼º¯¼ö°¡ Á÷Á¢Á¢±ÙÀ» ÇßÀ»¶§ ¿¡·¯°¡ ³ª´Â °ÍÀ» º¼ ¼ö ÀÖ´Ù. |
| 2 | ¿¹Á¦Å×½ºÆ® |
| Error |
class NewTop{ class Test{ |
|
Compile Error °á°ú |
Test.java:17: Variable a in class NewTop not accessible from class Test. t.a=3; ^ Test.java:18: Variable b in class NewTop not accessible from class Test. t.b=4; ^ Test.java:19: Variable a in class NewTop not accessible from class Test. System.out.println(t.a +" " +t.b); ^ Test.java:19: Variable b in class NewTop not accessible from class Test. System.out.println(t.a +" " +t.b); ^ 4 errors
À§ÀÇ ¿¹¿¡¼¿Í °°ÀÌ ÄÄÆÄÀÏ ÀÚü¿¡ ¿¡·¯°¡ ¹ß»ýÇÑ´Ù. À̰ÍÀº NewTopŬ·¡½º ³»¿¡ º¯¼öµéÀÌ privateÀ¸·Î µÇ¾î ÀÖ´Ù¸é À̰ÍÀº Á÷Á¢Á¢±ÙÀÌ ºÒ°¡´ÉÇØÁø´Ù. ±×·¡¼ ÄÄÆÄÀÏ·¯ ÀÚü¿¡¼ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °ÍÀÌ´Ù. ±×·¸´Ù¸é ¾î¶»°Ô private ¿¡ Á¢±ÙÇÒ ¼ö ÀÖÀ»±î? ±× ¹æ¹ýÀ» ¾Æ·¡¿¡¼ ¾Ë¾Æº¸µµ·ÏÇÏÀÚ
|
| 3 | Ŭ·¡½º ³»ºÎÀÇ ±¸¼º¿ä¼ÒÀÎ ¸â¹öº¯¼ö¿Í ¸â¹ö¸Þ¼µå |
|
Ŭ·¡½º ³»ºÎ¿¡ Á¸ÀçÇÏ´Â °ÍÀº ¸â¹öº¯¼ö¿Í ¸â¹ö¸Þ¼µå¶ó°í ¾Õ°Á¿¡¼µµ ¾ð±ÞÇÏ¿´´Ù. ¸â¹öº¯¼ö³ª ¸â¹ö¸Þ¼µå·Î ±¸¼ºµÇ¾îÁø »ç¿ëÀÚ°¡ ¸¸µç Ŭ·¡½º¸¦ ÀÌ¿ëÇÏ¿© °´Ã¼¸¦ ¸¸µé¾úÀ» ¶§ Áï Ŭ·¡½º¸¦ ÀÌ¿ëÇÏ¿© °´Ã¼º¯¼ö¸¦ ¸¸µé°í ±×¸®°í new ¿¬»êÀÚ¸¦ ÀÌ¿ëÇÏ¿© °´Ã¼º¯¼öÀÇ ¸Þ¸ð¸®¸¦ »ý¼ºÇßÀ» ¶§ ¿ì¸®´Â ±× °´Ã¼³»ºÎ¿¡ Á¸ÀçÇÏ´Â ¸â¹ö¿¡ Á¢±ÙÇÏ·Á ÇÒ °ÍÀÌ´Ù. ±×³ÉÁ¢±ÙÀÌ µÇ´Â °ÍÀº ¾Æ´Ï´Ù. privateÀ¸·Î µÇ¾î Àִ°ÍÀº Àý´ë °´Ã¼º¯¼ö¿¡¼ Á¢±Ù ºÒ°¡´ÉÇÏ´Ù. ¾î¶»°ÔÇϸé Á¢±ÙÇÒ ¼ö Àִ°¡? ¿ÜºÎ¿¡¼ Á÷Á¢Á¢±ÙÇÏ·Á¸é À̰ÍÀº ¹æ¹ýÀÌ ¾ø´Ù. ±×·¸´Ù¸é ¿ÜºÎ¿¡¼ Á¢±Ù°¡´ÉÇÏ°í ³»ºÎ¿¡¼µµ Á¢±Ù°¡´ÉÇÑ ¿ªÇÒÀ» ÇÏ´Â ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ´Ù. ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ¿© ÇÔ¼öÀÇ ¸Å°³º¯¼ö·Î ¿ÜºÎÀÇ °ªÀ» ¹Þ¾Æ¼ ±×¸®°í ³»ºÎ·Î Àü´ÞÇØ ÁÖ´Â ÀÏÀ» ÇÏ´Â °ÍÀÌ´Ù. ±×¸®°í privateÀ¸·Î ¼±¾ðµÈ ¸â¹öº¯¼ö¸¦ ¿ÜºÎ¿¡¼ °ªÀ» ¾òÀ¸·Á°í ÇÒ¶§ ¿ì¸®´Â ÇÔ¼öÀÇ return À» ÀÌ¿ëÇÏ¿© ¿ÜºÎ·Î Àü´ÞÇÑ´Ù. ±×·¸´Ù¸é privateÀ¸·Î ¼±¾ðµÈ ¸â¹ö¸Þ¼µå´Â ¾î¶²°¡? ¿ÜºÎ¿¡¼ Á¢±ÙÇÒ ¼ö ¾ø´Â °ÍÀº privateÀ̱⠶§¹®¿¡ ´ç¿¬ÇÑ °ÍÀÌ´Ù. À̰ÍÀº Ŭ·¡½º ³»ºÎ¿¡¼¸¸ »ç¿ëÇϱâ À§Çؼ ¸¸µé¾î µÐ ¸â¹ö ³»ºÎÀÇ ¸Þ¼µå¶ó°í »ý°¢ÇÏ¸é µÉ °ÍÀÌ´Ù. |
| 4 | private¿¡ Á¢±ÙÇϱâÀ§ÇÑ ¹æ¹ý-public , Function |
|
private¿¡ Á¢±ÙÇϱâ À§Çؼ´Â publicÀ» ÀÌ¿ëÇÏ´Â ¹æ¹ý¹Û¿¡´Â ¾ø´Ù. À̰ÍÀº µ¥ÀÌÅ͸¦ º¸È£Çϱâ À§Çؼ Àϼöµµ ÀÖ°í ¾î¶°ÇÑ ÀýÂ÷¸¦ °ÅÃÄ ±× °ªÀ» º¯°æÇÒ ¼ö ÀÖ°Ô Çϱâ À§ÇÑ °ÍÀÌ´Ù. ¿©±â¼ ¾î¶°ÇÑ ÀýÂ÷¸¦ °ÅÄ£´Ù´Â °ÍÀ» Àß »ý°¢Çغ¸¸é Ŭ·¡½º³»¿¡ Á¸ÀçÇÏ´Â ÀÓÀÇÀÇ °ªÀÌ °É·¯Á®¼ µé¾î°£´Ù°í »ý°¢ÇÏ¸é µÉ °ÍÀÌ´Ù. ¿©±â¼ ¿ì¸®´Â ¾Õ¿¡¼ »ç¿ëÇÏ´Â ¿¹¿Í´Â ´Ù¸¥ ¸â¹ö¸Þ¼µå°¡ Ãß°¡µÇ¾îÁö´Â ¿¹±îÁö °°ÀÌ º¼ ¼ö ÀÖ´Ù.
class NewTop{ private int a; private int b;
public void SetB_value(int y) public int GetA_value() public int GetB_value() class Test{ public static void main(String args[]) }
|
|
publicÀ¸·Î µÇ¾î Àִ Ŭ·¡½º ³»ÀÇ ¿ä¼ÒµéÀº °³¹æÀ» ÀǹÌÇÑ´Ù. ÇÏÁö¸¸ publicÀº ¿ÜºÎ¿¡ °³¹æµÇÁö¸¸ privateÀ¸·Î µÇ¾î ÀÖ´Â °ÍÀº ¿ÜºÎ¿¡ ¼û°ÜÁö´Â ¿ªÇÒÀ» ÇÏ°Ô µÈ´Ù. ÀÌ µÎ Á¢±ÙÁöÁ¤ÀÚÀÇ ¿ªÇÒÀº ÀÚ¹Ù¿¡¼ °¡Àå Áß¿äÇÑ, C++¿¡¼ °¡Àå Áß¿äÇÑ °³³äÀÌ´Ù. ÀÌ °³³ä¶§¹®¿¡ publicÇÔ¼öµéÀÇ ¿ªÇÒÀÌ °ÈµÇ´Â °ÍÀÌ´Ù. ÇÏÁö¸¸ publicÀ¸·Î µÇ¾î ÀÖ´Â ÇöÀçÀÇ ÇÔ¼öµéÀº ´Ü¼øÈ÷ ÇÔ¼öÀÇ ÀÎÅÍÆäÀ̽º¹Û¿¡´Â ¿ÜºÎ¿¡ Á¦°øÇØ ÁÖÁö ¾Ê´Â´Ù. ¿ÜºÎ¿¡ public ÇÔ¼ö³»¿¡ ¾î¶°ÇÑ ÀÏÀ» ÇÏ´ÂÁö´Â ¸ô¶óµµ µÈ´Ù. ±× ÇÔ¼ö°¡ ¾î¶°ÇÑ ÀÏÀ» ÇÒ °ÍÀ̶ó´Â °ÍÀÌ ¸í½ÃµÇ¾î Àֱ⶧¹®¿¡ ±× ÇÔ¼öÀÇ ÀÎÅÍÆäÀ̽º¸¸À» °¡Á®´Ù ¾µ »Ó ´õ ÀÌ»óÀº ¹Ù¶óÁö ¾ÊÀ¸¸ç ±×Á® »ç¿ë »ÓÀÌ´Ù. º¸Åë ¿ì¸®°¡ ´Ù¸¥ »ç¶÷ÀÌ ¸¸µé¾î ³õÀº Ŭ·¡½º¸¦ »ç¿ëÇÒ ¶§ À̰ÍÀ» ¸í½ÉÇØ¾ß ÇÑ´Ù. ÀÚ¹Ù¿¡¼ Á¦°øµÇ´Â Ŭ·¡½º¸¦ »ç¿ëÇÒ ¶§¿¡µµ ¸¶Âù°¡ÁöÀÌ´Ù. À̰ÍÀ» Ç¥ÁضóÀ̺귯¸®¶ó°í Çϴµ¥ ÀÚ¹Ù¿¡¼´Â ¹«¼öÇÑ ¶óÀ̺귯¸®¸¦ Á¦°øÇϰí ÀÖ´Ù. ¿©±â¼ ÃÐÁ¡À» ¸ÂÃß¾î¾ß ÇÏ´Â °ÍÀº publicÇÔ¼ö°¡ ¿ÜºÎ¿¡ º¸¿©ÁÖ±â À§ÇÑ ÀÎÅÍÆäÀ̽º¶ó´Â Á¡ÀÌ´Ù. ¸¸¾à Ŭ·¡½º³»ÀÇ privateÇÔ¼ö°¡ ÀÖ´Ù¸é ´ç¿¬È÷ ¿ÜºÎ¿¡¼ »ç¿ëÇÏÁö ¸øÇÑ´Ù. ¿©±â¼ ¿ÜºÎ¶õ °´Ã¼ÀÇ »ý¼º Èĸ¦ ±× °´Ã¼ÀÇ À̸§¿¡¼ Á÷Á¢Á¢±ÙÀÌ ºÒ°¡´ÉÇÏ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ¿ÜºÎ¿¡´Â »ç¿ëºÒ°¡´ÉÇÏÁö¸¸ ³»ºÎ¿¡¼´Â Áï, Ŭ·¡½ºÀÇ ³»ºÎ¿¡¼´Â private, publicÀÇ Á¢±ÙÁöÁ¤ÀÚ´Â ¹«ÀǹÌÇÏ´Ù. NewTop³»ºÎÀÇ ¸ðµç°ÍµéÀº È®½ÇÇÏ°Ô ³»ºÎ¿¡¼´Â Á¦ÇÑÀÌ ¾ø´Ù. ´ÜÁö ¿ÜºÎ¿¡ °ü·ÃµÈ °ÍµéÀÇ ±ÔÄ¢ÀÏ »ÓÀÌ´Ù. ±×·¡¼ Ŭ·¡½º ³»ºÎ¿¡ ÀÖ´Â °ÍµéÀ» ¸ðµÎ ¸â¹ö¶ó°í ºÎ¸¦ °ÍÀÌ´Ù. |
| 4 | protected |
|
Á¢±ÙÁöÁ¤ÀÚÁß¿¡¼ ¾ÆÁ÷ ¾ð±ÞÇÏÁö ¾ÊÀº ³»¿ëÀÌ ÀÖ´Ù¸é ±×°ÍÀº ¹Ù·Î protectedÀÌ´Ù. °£´ÜÇÏ°Ô ¾Õ°Á¿¡¼ ¼³¸íÀ» ÇßÁö¸¸ ´Ù½Ã ¼³¸íÀ» ÇÑ´Ù¸é protected ´Â »ó¼ÓÀÇ °ü°è¿¡¼ ³ª¿Â´Ù. protected´Â private°ú ¶È°°´Ù. ¿ÜºÎ¿¡¼´Â Á¢±Ù ºÒ°¡´ÉÇÏ´Ù. ±×¸®°í privateÀº »ó¼ÓÀ» ÇßÀ» ¶§µµ ÇÏÀ§ Ŭ·¡½º¿¡¼µµ Á÷Á¢Á¢±Ù ºÒ°¡´ÉÇØÁø´Ù. ȤÀÚ´Â ÀÌ·± Àǹ®À» °¡Áú °ÍÀÌ´Ù. »ó¼ÓÀ» ¹Þ¾Ò´Ù¸é »óÀ§Å¬·¡½ºÀÇ ¸ðµç ¸â¹ö´Â ÇÏÀ§Å¬·¡½ºÀÇ ¸â¹ö°¡ µÇ´Â °ÍÀÌ ¾Æ´Ñ°¡¶ó´Â Àǹ®À» Á¦±âÇÒ °ÍÀÌ´Ù. »ó¼ÓÀ» ¹Þ¾Ò´Ù¸é ´ç¿¬È÷ »óÀ§Å¬·¡½ºÀÇ ¸â¹ö´Â ÇÏÀ§Å¬·¡½ºÀÇ ¸â¹öó·³ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ private¼Ó¼ºÀº Á÷Á¢Á¢±ÙÀÌ ºÒ°¡´ÉÇÏ´Ù. Áï privateÀº Çѹø privateÀº ¿µ¿øÇÑ privateÀ̶ó´Â ¸»±îÁö ÇÒ ¼ö ÀÖ´Ù. Áï »ó¼ÓÀ» ÇßÀ» ¶§ ÇÏÀ§Å¬·¡½º¿¡¼ ÀÚ½ÅÀÇ ¸â¹öó·³ »ç¿ëÇϱâ À§Çؼ ¶Ç´Ù¸¥ ¹æ¹ýÀ» Á¦½ÃÇϰí ÀÖ´Ù. ¸ðµç ¸é¿¡¼ privateÀ» ¼öÇàÇÏ¸é¼ »ó¼ÓÀÇ °ü°è¿¡¼¸¸ publicÀÇ ÇàÀ§¸¦ ÇÏ´Â °ÍÀÌ ¹Ù·Î protectedÀÌ´Ù. À̰ÍÀ» ´Ù¸£°Ô Ç¥ÇöÇÑ´Ù¸é ¾Æ¹öÁöÀÇ ¸ðµç °ÍÀº »ó¼ÓÀ» ¹Þ¾Æ Á÷Á¢»ç¿ëÇÒ ¼ö ÀÖÁö¸¸ ¾Æ¹öÁöÀÇ private¸¸Àº Á÷Á¢Á¢±Ù¸øÇÑ´Ù.ÇÏÁö¸¸ ¾Æ¹öÁöÀÇ protected´Â ¾ÆµéÀÇ ¸â¹öó·³ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ·¸°Ô ÇÏ¸é ¾Æ¹öÁöÀÇ ¸ðµç °ÍÀÌ ¾ÆµéÀÇ °ÍÀÌ µÈ´Ù°í ÇØµµ °ú¾ðÀÌ ¾Æ´Ï´Ù. Áï ¾Æ¹öÁö°Íµµ ³»°Í ³»°Íµµ ³»°ÍÀ̶ó´Â ¸»À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. |
| 5 | ¸â¹ö¶ó°í ºÒ¸®´Â °Íµé |
|
ÇϳªÀÇ Å¬·¡½º ³»¿¡ ÀÖ´Â °ÍµéÀ» ÀÌÁ¦ºÎÅÍ´Â º¯¼öµéÀº ¸â¹öº¯¼ö, ±×¸®°í ÇÔ¼ö´Â ¸â¹ö¸Þ¼µå¶ó°í ¸íÇÒ °ÍÀÌ´Ù. À̰ÍÀº ³»ºÎÀÇ ¸â¹öº¯¼öµéÀº ÇϳªÀÇ Å¬·¡½º³»¿¡¼ Àü¿ªº¯¼öó·³ Ȱ¿ëÀ̵ȴÙ. ±×¸®°í private¸â¹öÇÔ¼ö´Â ³»ºÎ¿¡¼¸¸ »ç¿ëÇϱâ À§ÇÑ ÇÔ¼öÀÌ¸ç ±×¸®°í public¸â¹öÇÔ¼ö´Â ³»ºÎ¿ÜºÎ ¸ðµÎ¿¡¼ »ç¿ëÇϱâÀ§ÇÑ ÇÔ¼öÀÌ´Ù. À̰ÍÀ» ¸ðµÎ Á¤¸®ÇÏ¸é ¿ÜºÎ¿¡º¸ÀÌ´Â °ÍÀº public¹Û¿¡ ¾øÀ¸¸ç ³»ºÎ¿¡ Á¸ÀçÇÏ´Â °ÍÀº ¸ðµÎ °øÀ¯ÇÑ´Ù´Â Àǹ̰¡ µÇ´Â °ÍÀÌ´Ù. ±×·¡¼ ³»ºÎ¿¡ ÀÖ´Â °ÍÀ» ¸â¹ö¶ó°í ºÎ¸£´Â °ÍÀÌ ¾Æ´Ò±î? |