thisÀÇ »ç¿ë¹ý Áß¿¡¼ this¸¦ ÀÌ¿ëÇÏ¿© ÀÚ½ÅÀ» ÂüÁ¶ÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. Ŭ·¡½º ³»¿¡¼ ¸â¹öÇʵå¿Í ¸â¹ö¸Þ¼µå¸¦ »ç¿ëÇÒ ¶§ this¸¦ »ç¿ëÇÏ´Â °Í°ú ÇÏÁö ¾Ê´Â °ÍÀº µ¿ÀÏÇÕ´Ï´Ù. ±ÍÂú±â ¶§¹®¿¡ this¸¦ »ç¿ëÇÏÁö ¾ÊÁö¸¸, this¸¦ Ç¥½ÃÇÑ´Ù¸é ÄÚµå´Â ´õ¿í ¸íÈ®ÇØÁý´Ï´Ù. Äڵ尡 º¹ÀâÇØÁö¸é »ç¿ëÇÏ´Â º¯¼ö°¡ Ŭ·¡½ºÀÇ ¸â¹öÇʵåÀÎÁö, ¾Æ´Ï¸é Áö¿ªº¯¼öÀÎÁö È¥µ¿ µÉ ¼ö°¡ ÀÖ½À´Ï´Ù. ¸¸¾à this¸¦ ÀÌ¿ëÇÑ´Ù¸é ¾ÆÁÖ °£´ÜÈ÷ ¸â¹öÀÎÁö ¾Æ´ÑÁö¸¦ ±¸ºÐÇÒ ¼ö ÀÖ½À´Ï´Ù.
|
¢Ñ this.¸â¹ö |
Áö±ÝÀº Ŭ·¡½º ³»ºÎÀÇ thisÀÌÁö¸¸ ¾ðÁ¨°¡ »ý¼ºµÉ ³» ¸Þ¸ð¸®ÀÇ this¶ó°í ÇØ¼®ÇÒ ¼ö ÀÖ´Ù. Áï, ¾ðÁ¨°¡ »ý¼ºµÉ ¸Þ¸ð¸®ÀÇ ¸â¹ö°¡ µÇ´Â °ÍÀÔ´Ï´Ù. |
µðÀÚÀΟÀÓÀÇ this´Â °øÅëµÈ thisÀÌÁö¸¸ ½ÇÇà ŸÀÓÀÇ this´Â »ý¼ºµÇ´Â °´Ã¼ º¯¼öÀÇ ÂüÁ¶°ª°ú °°Àº °ªÀ» °¡Áö±â ¶§¹®¿¡ °¢°¢ÀÇ this°¡ µÇ´Â °ÍÀÔ´Ï´Ù. ¾ÆÁ÷ »ý¼ºµµ µÇÁö ¾ÊÀº ¸Þ¸ð¸®¿¡ ´ëÇÑ ÂüÁ¶°ªÀ» this¶ó´Â °´Ã¼º¯¼ö°¡ ³ªÁß¿¡ ¸Þ¸ð¸®°¡ »ý¼ºµÇ¸é °¡Áú °ÍÀ̶ó´Â °¡Á¤ ÇÏ¿¡ »ç¿ëÇÏ´Â °ÍÀÌ´Ï, this¸¦ »ç¿ëÇÏ¿© ¸â¹ö¿¡ Á¢±ÙÇϵçÁö ±×³É ¸â¹ö¿¡ Á¢±ÙÇϵçÁö °á±¹¿¡´Â °°Àº °ÍÀÔ´Ï´Ù. ÀÏ´Ü ¿¹¸¦ µé¾î º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
|
& |
ThisTest.cs |
Ü ÀÚ½ÅÀÇ ¸â¹ö¸¦ ³ªÅ¸³»´Â this¸¦ Å×½ºÆ®ÇÑ ¿¹Á¦ |
|
using System; public class ThisTest { private int number; private string name; public ThisTest(string name, int number) { //this¸¦ ÀÌ¿ëÇÑ ¸Å°³º¯¼ö¿ÍÀÇ ±¸ºÐ(¹Ýµå½Ã ¸í½ÃÇØ¾ß ÇÔ) this.name = name; this.number = number; } public void print(){ Console.WriteLine("-- this¸¦ ÀÌ¿ëÇÑ ¸â¹ö Å×½ºÆ®---"); Console.WriteLine("name:" + this.name + " number:" + + this.number); } public void myprint(){ Console.WriteLine("-- this¸¦ ÀÌ¿ëÇÑ ¸Þ¼µå Å×½ºÆ®---"); this.print(); } public static void ThisTest th = new ThisTest("È«±æµ¿", 20); th.print(); th.myprint(); } } | ||
|
C:\C#Example\04>csc ThisTest.cs C:\C#Example\04>ThisTest -- this¸¦ ÀÌ¿ëÇÑ ¸â¹ö Å×½ºÆ®--- name:È«±æµ¿ number:20 -- this¸¦ ÀÌ¿ëÇÑ ¸Þ¼µå Å×½ºÆ®--- -- this¸¦ ÀÌ¿ëÇÑ ¸â¹ö Å×½ºÆ®--- name:È«±æµ¿ number:20 | ||
ÀÌ ThisTest Ŭ·¡½º¿¡¼´Â µÎ °³ÀÇ ¸â¹öÇʵ带 °¡Áö°í ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½º ³»¿¡¼´Â, ¸¸ÀÏ ¸â¹öÇʵå name°ú number¿¡ Á¢±ÙÇÏ·Á ÇÑ´Ù¸é, »ç¿ëÇÏ°í ½ÍÀº °÷¿¡ ¸¶À½´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ »ý¼ºÀÚ¸¦ º»´Ù¸é nameÀÌ Áߺ¹µÇ¾î ÀÖ½À´Ï´Ù. À̰ÍÀº ¸Þ¼µåÀÇ ¸Å°³º¯¼ö¿Í Ŭ·¡½ºÀÇ ¸â¹öÇʵ尡 µ¿ÀÏÇϱ⠶§¹®¿¡ ±¸ºÐÀ» ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. À̰ÍÀ» ±¸ºÐÇϱâ À§ÇÑ ¹æ¹ýÀ¸·Î this¸¦ »ç¿ëÇÑ´Ù¸é ¸â¹ö¶ó´Â ÀǹÌÀÔ´Ï´Ù. À§ ¿¹Á¦ÀÇ »ý¼ºÀÚ ºÎºÐ¿¡¼ ÀÌ·¯ÇÑ º¯¼öÀÇ ¾Ö¸Å¼ºÀ» ¸íÈ®ÇÏ°Ô ÇØ°áÇϰí ÀÖ½À´Ï´Ù.
|
this¸¦ »ç¿ëÇÑ ¿¹ |
|
public ThisTest(String name, int number){ //this¸¦ »ç¿ëÇÏ¿© ¸â¹öÇʵå¿Í ¸Å°³º¯¼öÀÇ ±¸ºÐ this.name = name; this.number = number; } |
¸Å°³º¯¼öÀÇ À̸§µµ nameÀÌ°í ¸â¹öÇʵåÀÇ À̸§µµ nameÀÔ´Ï´Ù. ¾ð¾îÀûÀÎ ¿ø¸®¿¡ ÀÇÇÏ¸é °¡±î¿î º¯¼ö°¡ ´õ Å« ¿µÇâ·ÂÀÌ ÀÖ½À´Ï´Ù. this¸¦ ºÙÀÌÁö ¾ÊÀ¸¸é »ý¼ºÀÚ ³»¿¡ Á¸ÀçÇÏ´Â nameÀº ¸ðµÎ ¸Å°³º¯¼öÀÇ nameÀÔ´Ï´Ù. ÀÌ·¸°Ô µÈ´Ù¸é ¿ÜºÎ¿¡¼ µé¾î¿À´Â µ¥ÀÌÅ͸¦ ¸â¹öÇʵ忡 ³ÖÀ» ¼ö°¡ ¾ø½À´Ï´Ù.
|
¢Ñ this.¸â¹öÀÇ ¿¹ |
À§ÀÇ ¿¹Á¦´Â 4.10ÀýÀÇ º¯¼ö¿Í ¸Þ¼µå ¹«½ÃÇϱ⿡¼ Áö¿ªº¯¼ö·Î ÀÎÇØ¼ ¸â¹öÇʵ尡 ¹«½ÃµÇ´Â ¹®Á¦Á¡À» this·Î ÇØ°áÇϰí ÀÖ½À´Ï´Ù. |
¸¸¾à¿¡ this¸¦ ºÙÀδٸé this´Â ¾ðÁ¨°¡ »ý¼ºµÉ ³» ¸Þ¸ð¸®ÀÇ Áï, thisÀÇ nameÀÌ µÇ¾î ¹ö¸³´Ï´Ù. ÀÌ·¸°Ô µÇ¸é ´ç¿¬È÷ this.nameÀº ¸â¹öÇʵåÀÇ nameÀÌ µÇ±â ¶§¹®¿¡ º°´Ù¸¥ ³ë·Â ¾øÀÌ º¯¼öÀÇ À̸§ÀÌ °°¾Æµµ ³× ²¨, ³» ²¨ È®½ÇÇÏ°Ô ±¸º° ÁöÀ» ¼ö ÀÖ½À´Ï´Ù. name°ú number´Â »ý¼ºÀÚÀÇ ¸Å°³º¯¼ö¸¦ ¸»ÇÏ´Â °ÍÀ̸ç this.name°ú this.numberÀº ¸â¹öÇʵ带 °¡¸®Å°´Â °ÍÀÔ´Ï´Ù.
this¶ó´Â Ű¿öµå´Â ¸â¹ö¶ó´Â °ÍÀ» ¾Ë¸®´Â ÇϳªÀÇ Ç¥½Ã¹æ¹ýÀÌÁö¸¸ ¸¸¾à À§ÀÇ »óȲó·³ Ư¼öÇÑ °æ¿ì°¡ ¾Æ´Ï¸é this Ű¿öµå¸¦ »ç¿ëÇÏÁö ¾Ê¾Æµµ ¹«¹æÇÕ´Ï´Ù. ÇÏÁö¸¸ this Ű¿öµå¸¦ »ç¿ëÇÏ¿© ¾î´À ¼Ò¼ÓÀÇ ¸Þ¼µåÀÎÁö º¯¼öÀÎÁö¸¦ ºÐ¸íÈ÷ ÇÑ´Ù¸é ÄÚµå´Â ´õ¿í ¸íÈ®ÇØÁý´Ï´Ù. Ŭ·¡½º ³»¿¡ ¸ðµç ¸â¹ö´Â this¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç »ç¿ëÇÏÁö ¾Ê¾Æµµ »ó°üÀº ¾ø½À´Ï´Ù.
|
¢Ã ÀÚ½ÅÀÇ ¸â¹ö¸¦ °¡¸£Å°´Â this(this.¸â¹ö) |
|
q ¸Þ¼µåÀÇ ¸Å°³º¯¼ö¿Í Ŭ·¡½ºÀÇ ¸â¹öÇʵ带 ±¸ºÐÇØ ÁÖ¾î¾ß ÇÒ ¶§ »ç¿ë q thisŰ¿öµå¸¦ »ç¿ëÇÏÁö ¾Ê¾Æµµ ¹«¹æ |
| jabookÀúÀÚ¸íÇÔ |
|
Á¦¸ñ:¼Ò¼³°°ÀºC# Á¦4°ÀÇ ÀúÀÚ:ÃÖ¿µ°ü |