new ¿¬»êÀÚ·Î °´Ã¼¸¦ »ý¼ºÇÏ¸é ¸ðµç Çʵå´Â 0, null, false µîÀÇ ±âº»°ªÀ¸·Î ÃʱâȵȴÙ. Áö¿ªº¯¼ö¿Í
´Þ¸® ¾²·¹±â´Â Ä¡¿ö ÁÖÁö¸¸ ±×³É 0ÀÏ »Ó ÀǹÌÀÖ´Â °ªÀº ¾Æ´Ï´Ù. °´Ã¼ÀÇ
¿ëµµ¿¡ ¸Â°Ô ÃʱâÈÇϱâ À§ÇØ »ý¼º ÈÄ °¢ Çʵ忡 ¿øÇÏ´Â °ªÀ» ´ëÀÔÇÑ´Ù.
Car korando = new Car();
korando.name = "ÄÚ¶õµµC";
korando.gasoline = false;
Áö±Ý±îÁö ¸¸µç ¿¹Á¦´Â ÀÚµ¿Â÷ »ý¼º ÈÄ À̸§°ú ¿¬·á Á¾·ù¸¦ ÀÏÀÏÀÌ ´ëÀÔÇÏ¿© ÃʱâÈÇß´Ù. »ý¼º Á÷ÈÄ ¸Å¹ø ÃʱâÈÇϱâ´Â ¹ø°Å·Ó´Ù. ±×³ª¸¶ ÇÊµå °³¼ö°¡ ÀûÀ¸¸é
ÇÒ¸¸ÇÏÁö¸¸ Çʵ尡 ´Ã¾î³ª°í ÃʱâÈ ¹æ¹ýÀÌ º¹ÀâÇØÁö¸é »ý¼º ÈÄ¿¡ ÇÒ ÀÏÀÌ ³Ê¹« ¸¹´Ù.
À¯È¿ÇÑ °´Ã¼¸¦ ¸¸µé·Á¸é ÃʱâÈ´Â Çʼö °úÁ¤ÀÌ´Ù. ÀÌ¿Õ ÃʱâÈÇҰŶó¸é
»ý¼º ÈÄ µû·Î ´ëÀÔÇÏ´Â °Íº¸´Ù ¾Æ¿¹ »ý¼ºÇÒ ¶§ °´Ã¼ ½º½º·Î ÃʱâÈÇÏ´Â °ÍÀÌ Æí¸®ÇÏ´Ù. À̶§´Â Ãʱâȸ¦
Àü´ãÇÏ´Â »ý¼ºÀÚ¶ó´Â Ưº°ÇÑ ¸Þ¼µå°¡ »ç¿ëµÇ´Âµ¥ ÀÏ¹Ý ¸Þ¼µå¿¡ ºñÇØ ´ÙÀ½°ú °°Àº Â÷ÀÌÁ¡ÀÌ ÀÖ´Ù.
¨ç ¸Þ¼µå À̸§ÀÌ Å¬·¡½º À̸§°ú °°´Ù.
¨è Ãʱâȸ¸ ´ã´çÇϹǷΠ¸®ÅÏ°ªÀÌ ¾ø´Ù.
°´Ã¼ »ý¼º½Ã¿¡ ÀÚµ¿À¸·Î È£ÃâµÇ¹Ç·Î À̸§°ú ¸®ÅÏ¿¡ ´ëÇÑ ±ÔÄ¢Àº °Á¦ÀûÀÌ¸ç ¹Ýµå½Ã ÁöÄÑ¾ß ÇÑ´Ù. Àμö´Â ¿øÇϴ´ë·Î ¹ÞÀ» ¼ö ÀÖÀ¸¸ç ÁÖ·Î ÇʵåÀÇ ÃʱⰪÀ» ¹Þ¾Æ ´ëÀÔÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ÀÚµ¿Â÷ °´Ã¼¸¦ ÃʱâÈÇÏ´Â »ý¼ºÀÚ¸¦ Á¤ÀÇÇÑ´Ù.
constructor |
½ÇÇà°á°ú |
class Car { String
name; boolean
gasoline; Car(String
aName, boolean aGasoline) { name
= aName; gasoline
= aGasoline; } void
run() { if
(gasoline) { System.out.println("ºÎ¸ª
ºÎ¸ª"); }
else { System.out.println("´úÄÈ
´úÄÈ"); } } void
stop() { System.out.println("³¢ÀÌÀÍ"); } } class JavaTest { public
static void main(String[] args) { Car
korando = new Car("ÄÚ¶õµµC", false); korando.run(); korando.stop(); } } |
´úÄÈ ´úÄÈ ³¢ÀÌÀÍ |
Car Ŭ·¡½ºÀÇ »ý¼ºÀÚ´Â Car()
À̸ç 2°³ÀÇ Àμö¸¦ ¹Þ¾Æ name°ú gasoline Çʵ忡 ´ëÀÔÇÑ´Ù. À̸§ÀÌ Car¶ó´Â °Í°ú ¸®ÅÏ Å¸ÀÔ ÁöÁ¤ÀÌ ¾Æ¿¹ ¾ø´Ù´Â Á¡À» À¯ÀÇÇÏÀÚ. new ¿¬»êÀÚ·Î
°´Ã¼¸¦ »ý¼ºÇÒ ¶§ ¿øÇÏ´Â ÃʱⰪÀ» »ý¼ºÀÚ·Î Àü´ÞÇϸé Çʵ忡 ´ëÀԵȴÙ. ¼¼ ÁÙ·Î ÀÛ¼ºÇß´ø °´Ã¼ »ý¼º ¹×
ÃʱâÈ ¹®ÀåÀÌ ÇÑ ÁٷΠª¾ÆÁø´Ù.
Çʵ忡 ´ëÀÔÇÒ °ªÀÌ »ý¼ºÀÚ È£Ãâ¹®ÀÇ Àμö ¸ñ·ÏÀ¸·Î ½ï µé¾î°¡ »ý¼º¹®ÀÌ °£°áÇØÁö°í ¾î¶»°Ô ÃʱâȵǴÂÁö ÆľÇÇϱ⵵
½±´Ù. Çʵ忡 ÃʱⰪÀ» ´ëÀÔÇÏ´Â »ý¼ºÀÚ Äڵ带 Ŭ·¡½º¿¡ Æ÷ÇÔ½ÃÄÑ µÎ°í »ý¼º ½ÃÁ¡¿¡ Àμö¸¦ ¹Þ¾Æ ½ÇÇàÇÑ´Ù. »ý¼ºÀÚÀÇ Çü½Ä Àμö À̸§Àº Çʵå¿Í ´Þ¶ó¾ß ÇÑ´Ù. ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇϸé
¾ÈµÈ´Ù.
Car(String name, boolean gasoline) {
name
= name;
gasoline
= gasoline;
}
¸Þ¼µå ³»¿¡¼´Â Áö¿ªº¯¼ö°¡ ¿ì¼±ÀÌ¾î¼ Çʵå¿Í °°Àº À̸§ÀÇ Çü½Ä Àμö¸¦ »ç¿ëÇϸé Àμö¿¡ ÀÇÇØ Çʵ尡 °¡·ÁÁø´Ù. name = name ´ëÀÔ¹®Àº ÀÚ½ÅÀÇ °ªÀ» ½º½º·Î¿¡°Ô ´ëÀÔÇÏ´Â Àǹ̾ø´Â µ¿ÀÛÀ» ÇÏ¸ç °á±¹ Çʵå´Â ÃʱâȵÇÁö
¾Ê´Â´Ù.
ÃʱâÈ ´ë»ó º¯¼ö¿Í ÃʱⰪÀÇ ¸íĪ Ãæµ¹ ¹®Á¦¶ó Áߺ¹¸¸ ÇØ°áÇÏ¸é µÈ´Ù. À§
¿¹Á¦´Â Çü½Ä Àμö À̸§ ¾Õ¿¡ Àμö(Argument)¶ó´Â ÀǹÌÀÇ a Á¢µÎ¸¦
ºÙ¿´´Ù. Á¢µÎ ´ë½Å º»Ã¼¿¡¼ ÇÊµå ¾Õ¿¡ this Å°¿öµå¸¦
ºÙÀÌ´Â ¹æ¹ýµµ ÀÖ´Ù.
Car(String name, boolean gasoline) {
this.name
= name;
this.gasoline
= gasoline;
}
Ŭ·¡½º ¾È¿¡¼ this´Â °´Ã¼ ÀÚ½ÅÀ» ³ªÅ¸³»¸ç °´Ã¼ÀÇ ¸â¹ö¸¦ ĪÇÒ
¶§ »ç¿ëÇÑ´Ù. À§ Äڵ忡¼ this.nameÀº Áö±Ý ÃʱâÈÁßÀÎ
°´Ã¼ÀÇ name Çʵ带 ÀǹÌÇÏ¸ç ±×³É nameÀº »ý¼ºÀÚÀÇ
Çü½Ä ÀμöÀÌ´Ù. this.name = name Àº Àμö·Î ¹ÞÀº
name °ªÀ» °´Ã¼ÀÇ name Çʵ忡 ´ëÀÔÇÑ´Ù´Â ¶æÀÌ´Ù.
¾î¶² ¹æ¹ýÀ» ¾²µç Àμö¿Í Çʵ带 ±¸ºÐÇÒ ¼ö¸¸ ÀÖÀ¸¸é µÈ´Ù. Á¢µÎ¸¦
ºÙÀÌ´Â ¹æ¹ýº¸´Ù this¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ Å¸ÀÌÇÎ ¼ö°¡ ¾à°£ ¸¹Áö¸¸ Á÷°üÀûÀÌ´Ù. this´Â ÀÌ ¿Ü¿¡µµ ¿©·¯ °¡Áö ¿ëµµ°¡ Àִµ¥ Â÷Â÷ ¿¬±¸ÇØ º¸ÀÚ. ´ÙÀ½
¿¹Á¦´Â Time Ŭ·¡½ºÀÇ »ý¼ºÀÚ¸¦ Á¤ÀÇÇÑ´Ù.
timector |
½ÇÇà°á°ú |
class Time { boolean
am; int
hour; int
minute; int
second; Time(boolean
am, int hour, int minute, int secound) { this.am
= am; this.hour
= hour; this.minute
= minute; this.second
= secound; } void
whatTime() { System.out.print(am
? "¿ÀÀü ":"¿ÀÈÄ
"); System.out.println(hour
+ "½Ã " + minute + "ºÐ " + second + "ÃÊ"); } } class JavaTest { public
static void main(String[] args) { Time
now = new Time(true, 12, 34, 56); now.whatTime(); } } |
¿ÀÀü 12½Ã 34ºÐ 56ÃÊ |
TimeÀÇ »ý¼ºÀÚ´Â ½Ã°£ ¿ä¼Ò¸¦ ±¸¼ºÇÏ´Â 4°³ÀÇ Çʵ尪À» Àμö·Î ¹Þ¾Æ °¢ Çʵ忡 ´ëÀÔÇÑ´Ù. ´Ü ÇÑ ÁÙ·Î ½Ã°£
°´Ã¼¸¦ ÃʱâÈÇÒ ¼ö ÀÖ¾î Æí¸®ÇÏ¸ç »ý¼º¹®À» º¸¸é ÃʱâÈµÈ ½Ã°£À» ¹Ù·Î ¾Ë ¼ö ÀÖ¾î Äڵ带 Àб⵵ ½±´Ù.
º¹ÀâÇÑ °´Ã¼´Â ÃʱâÈÇÏ´Â ¹æ¹ýµµ ´Ù¾çÇÏ´Ù. »ý¼ºÀÚµµ ÀÏÁ¾ÀÇ ¸Þ¼µå¿©¼
½Ã±×´Ïó°¡ ´Ù¸£¸é ¿©·¯ ¹ú·Î ¿À¹ö·Îµù °¡´ÉÇÏ´Ù. »ý¼ºÀÚ°¡ ¿©·¯ °³ ÀÖÀ¸¸é °´Ã¼ÀÇ ¿ëµµ³ª º¸À¯ÇÑ Á¤º¸¿¡
µû¶ó ¼±ÅÃÀûÀ¸·Î ÃʱâÈÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â Time Ŭ·¡½ºÀÇ
»ý¼ºÀÚ¸¦ ¿À¹ö·ÎµùÇÑ´Ù.
ctorover |
½ÇÇà°á°ú |
class Time { boolean
am; int
hour; int
minute; int
second; Time(boolean
am, int hour, int minute, int second) { this.am
= am; this.hour
= hour; this.minute
= minute; this.second
= second; } Time(boolean
am, int hour, int minute) { this.am
= am; this.hour
= hour; this.minute
= minute; this.second
= 0; } Time(int
hour24, int minute) { this.am
= hour24 < 12; this.hour
= hour24 % 12; this.minute
= minute; this.second
= 0; } void
whatTime() { System.out.print(am
? "¿ÀÀü ":"¿ÀÈÄ
"); System.out.println(hour
+ "½Ã " + minute + "ºÐ " + second + "ÃÊ"); } } class JavaTest { public
static void main(String[] args) { Time
now = new Time(true, 12, 34); now.whatTime(); Time
today = new Time(18, 30); today.whatTime(); } } |
¿ÀÀü 12½Ã 34ºÐ 0ÃÊ ¿ÀÈÄ 6½Ã 30ºÐ 0ÃÊ |
TimeÀ̶ó´Â ¶È°°Àº À̸§À¸·Î ¼¼ °³ÀÇ »ý¼ºÀÚ¸¦ ¿À¹ö·ÎµùÇß´Ù. ÃʱâÈ ¹æ¹ý¿¡ µû¶ó ÇÊ¿äÇÑ ÀμöÀÇ °³¼ö³ª ŸÀÔÀÌ ´Ù¸£´Ù. ù ¹ø°
»ý¼ºÀÚ´Â ¸ðµç Çʵ带 ´Ù ÃʱâÈÇÏ´Â ¿Ïº®ÇÑ ¹öÀüÀÌ´Ù. 4°³ÀÇ Àμö·Î ¸ðµç Çʵ带 ¼¶¼¼ÇÏ°Ô ÃʱâÈÇÏÁö¸¸
Àμö°¡ ¸¹¾Æ ¹ø°Å·Ó´Ù.
µÎ ¹ø° »ý¼ºÀÚ´Â ÃÊ´ÜÀ§´Â ¹«½ÃÇÏ°í ºÐ±îÁö¸¸ ´ëÀÔÇϸç ÃÊ´Â 0À¸·Î
°¡Á¤ÇÑ´Ù. ½Ã°£°ª¿¡¼ ÃÊ´Â ±×¸® Áß¿äÇÏÁö ¾Ê¾Æ »ý·«ÇÏ´Â °æ¿ì°¡ ¸¹´Ù.
ÀÏ»ó »ýÈ°¿¡¼µµ 12½Ã 40ºÐ¿¡ ¾à¼ÓÀ» Á¤ÇÏÁö 12½Ã 40ºÐ 26ÃÊ·Î
ÇÏÁö´Â ¾Ê´Â´Ù. ±×·¡¼ Àß ¾²Áöµµ ¾Ê´Â ÃÊ´Â Á¦¿ÜÇÏ°í 3°³ÀÇ
Àμö¸¸ ¹Þ´Â´Ù.
¸¶Áö¸· »ý¼ºÀÚ´Â ¿ÀÀü/¿ÀÈĸ¦ º°µµÀÇ Àμö·Î Àü´Þ¹ÞÁö ¾Ê°í 24½Ã°£Á¦ÀÇ ½Ã°£°ªÀ¸·Î ÀÚµ¿ ÆǺ°ÇÑ´Ù. ½Ã°£°ªÀÌ 12º¸´Ù ÀÛÀ¸¸é ¿ÀÀüÀÌ°í 12 ÀÌ»óÀÌ¸é ¿ÀÈÄÀÌ¸ç ½Ã°£Àº 12·Î ³ª´« ³ª¸ÓÁö¸¦ ÃëÇÑ´Ù. ½Ã,
ºÐ µÎ °³ÀÇ Àμö¸¸ Àü´ÞÇÏ¸é µÈ´Ù.
main¿¡¼ 2°³ÀÇ ½Ã°£
°´Ã¼¸¦ °¢°¢ ´Ù¸¥ ¹æ¹ýÀ¸·Î ÃʱâÈÇÏ¿© Ãâ·ÂÇߴµ¥ Á¤»óÀûÀÎ ½Ã°£°ªÀ¸·Î Àß Ãâ·ÂµÈ´Ù. 18½Ã 30ºÐÀÌ ¿ÀÈÄ 6½Ã 30ºÐÀ¸·Î
Ç¥ÇöµÈ´Ù. »óȲ¿¡ µû¶ó ÃʱâÈ ¹æ¹ýÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´Ù´Â ¸é¿¡¼ Æí¸®ÇÏÁö¸¸ »ý¼ºÀÚ³¢¸® Áߺ¹µÇ´Â Äڵ尡
¸¹´Ù.
µÎ °³ÀÇ »ý¼ºÀÚ´Â ÃÊ Çʵå ÃʱâÈ ¿©ºÎ¸¸ ´Ù¸¦ »Ó ¿ÀÀü/¿ÀÈÄ, ½Ã, ºÐÀÇ °ªÀ» ´ëÀÔÇÏ´Â Äڵ尡 ÀÏÄ¡ÇÑ´Ù. ÁúÀûÀ¸·Î ´Ù¸¥ ÃʱâÈ°¡ ¾Æ´Ï¶ó ÀϺΠ»ý·«À̳ª ÀÚµ¿ °è»ê Á¤µµÀÇ Â÷ÀÌÀε¥ ÀÌ·² ¶§´Â »ý¼ºÀÚ³¢¸® È£ÃâÇÏ¿© Áߺ¹À»
Á¦°ÅÇÑ´Ù. »ý¼ºÀÚ¿¡¼ ´Ù¸¥ »ý¼ºÀÚ¸¦ È£ÃâÇÒ ¶§´Â this¸¦
»ç¿ëÇÑ´Ù.
ctorcall |
½ÇÇà°á°ú |
class Time { .... Time(boolean
am, int hour, int minute) { this(am,
hour, minute, 0); } Time(int
hour24, int minute) { this(hour24
< 12, hour24 % 12, minute); } .... |
¿ÀÀü 12½Ã 34ºÐ 0ÃÊ ¿ÀÈÄ 6½Ã 30ºÐ 0ÃÊ |
µÎ ¹ø° »ý¼ºÀڴ ù ¹ø° »ý¼ºÀÚ¸¦ È£ÃâÇ쵂 second Àμö ´ë½Å 0À» Àü´ÞÇÑ´Ù. ¼¼ ¹ø° »ý¼ºÀÚ´Â µÎ ¹ø° »ý¼ºÀÚ¸¦ È£ÃâÇ쵂 ½Ã°£À¸·ÎºÎÅÍ am°ªÀ» ÆǺ°ÇÏ°í ½Ã°£À» 12·Î ³ª´« ³ª¸ÓÁö·Î Á¤±ÔÈÇÏ¿© Àü´ÞÇÑ´Ù. Àü´Þ¹ÞÀº Á¤º¸¸¦ °¡°øÇÏ¿© ´Ù¸¥ »ý¼ºÀÚ¸¦ È£ÃâÇÏ´Â °ÍÀÌ´Ù.
new Time(true, 12, 34) »ý¼º¹®¿¡ ÀÇÇØ µÎ ¹ø° »ý¼ºÀÚ°¡
È£ÃâµÇ¸ç ¿©±â¼ ÃÊ °ªÀ» 0À¸·Î ÇÏ¿© ù ¹ø° »ý¼ºÀÚ¸¦ È£ÃâÇÑ´Ù.
am, ½Ã, ºÐÀº ¿øÇϴ´ë·Î Ãʱâȵǰí ÃÊ´Â 0À¸·Î
¸®¼ÂµÈ ½Ã°£ °´Ã¼°¡ »ý¼ºµÈ´Ù. new Time(18, 30) »ý¼º¹®Àº Àμö°¡ 2°³À̹ǷΠ¼¼ ¹ø° »ý¼ºÀÚ°¡ È£ÃâµÈ´Ù. ¿©±â¼ »óÀ§ÀÇ »ý¼ºÀÚ¸¦ ´ÙÀ½
¼ø¼´ë·Î È£ÃâÇÑ´Ù.
Çʵ带 ÃʱâÈÇÏ´Â ÁøÂ¥ ÄÚµå´Â ÇÑ »ý¼ºÀÚ¿¡¸¸ ÀÛ¼ºÇÏ°í ³ª¸ÓÁö´Â Àμö·Î Àü´Þ¹ÞÀº °ªÀ» °¡°øÇØ ³Ñ±â´Â ½ÄÀÌ´Ù. Áߺ¹ Äڵ尡 Á¦°ÅµÇ¾î °£·«Çϸç ÃʱâÈÀÇ ÁÖ¿ä ³í¸®°¡ ÇÑ °÷¿¡ ÁýÁßµÇ¾î °ü¸®¿¡µµ À¯¸®ÇÏ´Ù. »ç¿ëÀÚ´Â °´Ã¼¸¦ ¸¸µé ¶§ ¿øÇÏ´Â »ý¼ºÀÚ¸¦ °ñ¶ó È£ÃâÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½
µÎ »ý¼º¹®ÀÇ È¿°ú´Â ¿ÏÀüÈ÷ °°´Ù.
new Time(true, 12, 34)
new Time(true, 12, 34, 0)
»ý¼ºÀÚ¸¦ Áߺ¹ Á¤ÀÇÇÏÁö ¾Ê´õ¶óµµ »ç¿ëÀÚ°¡ ÃÊ Çʵ带 ¾Ë¾Æ¼ 0À¸·Î
³Ñ±â¸é µÇÁö ¾ÊÀ»±î? ±×·¸±â´Â ÇÏÁö¸¸ Àμö¸¦ 4°³ Àû´Â °Í°ú 3°³ Àû´Â °ÍÀº ÆíÀǼºÀÌ ´Ù¸£´Ù. Ãʸ¦ 0À¸·Î Àû´Â °Í Á¤µµ´Â Á» ±ÍÂúÀº ¼öÁØÀÌÁö¸¸ ´ÙÀ½ »ý¼º¹®Àº »ç¿ëÀÚ°¡ Á÷Á¢ º¯È¯Çϱ⠽±Áö ¾Ê´Ù.
new Time(18, 30)
new Time(false, 6, 30, 0)
18½Ã¶ó´Â ½Ã°£À» ¿ÀÈÄ 6½Ã·Î
¹Ù²ã¾ß ÇÏ°í ÃÊ°ªÀº 0À¸·Î Àü´ÞÇØ¾ß ÇÑ´Ù. ÀÌ·± ±ÍÂúÀº ¾Ï»êÀ»
´ë½ÅÇØ ÁÖ±â À§ÇØ »ý¼ºÀÚ¸¦ ÀÏÀÏÀÌ ¿À¹ö·Îµù½ÃÄÑ ³õ´Â´Ù. »ý»ê¼ºÀ» Á¶±ÝÀÌ¶óµµ Çâ»ó½ÃÅ°·Á¸é °´Ã¼¸¦ ÃÖ´ëÇÑ
¾²±â ½±°Ô ¸¸µé¾î¾ß ÇÑ´Ù.
Ŭ·¡½ºÀÇ ³»ºÎ°¡ º¹ÀâÇØÁö°í ¼º´ÉÀÌ Èñ»ýµÇ´õ¶óµµ ½±°í Á÷°üÀûÀ̾î¾ß °´Ã¼¸¦ ôô Á¶¸³ÇÏ¿© ÇÁ·Î±×·¥À» ½Å¼ÓÇÏ°Ô ¸¸µé
¼ö ÀÖ´Ù. Ŭ·¡½º¸¦ ¸¸µå´Â ÇÑ ¸íÀÌ 100¸¸ÅÀÇ ¼ö°í¸¦ ´õ
ÇÏ´õ¶óµµ »ç¿ëÇÏ´Â »ç¶÷ 1000¸íÀÌ 1¸¸Å¸¸ ÆíÇØÁ®µµ ÀüüÀûÀ¸·Î
À̵æÀÌ´Ù. ÀÌ°ÍÀÌ °´Ã¼ÁöÇâÀÇ Ã¶ÇÐÀÌ´Ù.
new ¿¬»êÀÚ´Â °´Ã¼¸¦ »ý¼ºÇÏ¸é¼ Àμö ¸ñ·Ï¿¡ ¸Â´Â »ý¼ºÀÚ¸¦ È£ÃâÇÏ¿©
ÃʱâȱîÁö ó¸®ÇÑ´Ù. ´ÙÀ½ È£Ãâ¿¡ ÀÇÇØ Car(String,
boolean), Time(boolean, int, int) »ý¼ºÀÚ°¡ °¢°¢ È£ÃâµÇ¾î ÀÚµ¿Â÷¿Í ½Ã°£ °´Ã¼¸¦ ¸¸µç´Ù.
new Car("ÄÚ¶õµµC",
false)
new Time(true, 12, 34);
±×·¸´Ù¸é »ý¼ºÀÚ¸¦ Á¤ÀÇÇϱâ Àü¿¡ ¸¸µé¾ú´ø ¿¹Á¦¿¡¼ Car °´Ã¼³ª Time °´Ã¼¸¦ »ý¼ºÇÏ´Â ¹®ÀåÀº ¾î¶² »ý¼ºÀÚ¸¦ È£ÃâÇÒ±î?
new Car()
new Time()
°ýÈ£°¡ ÀÖ´Â °ÍÀ¸·Î ºÁ¼ ºÐ¸íÈ÷ »ý¼ºÀÚ È£Ãâ¹®Àε¥ Àμö°¡ ¾ø´Ù. »ý¼ºÀÚ¸¦
Á¤ÀÇÇÏÁö ¾Ê¾ÒÀ½¿¡µµ °´Ã¼°¡ Àß »ý¼ºµÇ¾ú´Ù. ÀÌ Äڵ尡 µ¿ÀÛÇÏ´Â ÀÌÀ¯´Â ÄÄÆÄÀÏ·¯°¡ µðÆúÆ® »ý¼ºÀÚ¸¦ ÀÚµ¿À¸·Î
¸¸µé¾î Áֱ⠶§¹®ÀÌ´Ù.
Àμö°¡ ¾ø´Â »ý¼ºÀÚ¸¦ µðÆúÆ® »ý¼ºÀÚ¶ó°í Çϸç Àμö¾ø´Â »ý¼ºÀÚ(no arg
constructor)¶ó°íµµ ºÎ¸¥´Ù. Àü´Þ¹ÞÀº Á¤º¸°¡ ¾ø¾î ¾Æ¹« µ¿ÀÛµµ ÇÏÁö ¾ÊÀ¸¸ç ¸ðµç
Çʵå´Â ±âº»°ªÀ¸·Î ÃʱâȵȴÙ. ÃÖÃÊÀÇ Car Ŭ·¡½º ¿¹Á¦´Â
º°µµÀÇ »ý¼ºÀÚ¸¦ Á¤ÀÇÇÏÁö ¾Ê¾ÒÁö¸¸ ´ÙÀ½ »ý¼ºÀÚ°¡ ÀÚµ¿À¸·Î Á¤ÀÇµÇ¸ç ±×·¡¼ ÀÚµ¿Â÷ °´Ã¼¸¦ ¸¸µé ¼ö ÀÖ¾ú´Ù.
Car() { }
ÄÄÆÄÀÏ·¯°¡ µðÆúÆ® »ý¼ºÀÚ¸¦ ¸¸µé¾î ÁÖ´Â ÀÌÀ¯´Â °³¹ßÀÚ°¡ »ý¼ºÀÚ¸¦ Á¤ÀÇÇÏÁö ¾Ê´õ¶óµµ ÃÖ¼ÒÇÑ ±âº»°ªÀ¸·Î °´Ã¼¸¦ »ý¼ºÇÒ
¼ö ÀÖ¾î¾ß Çϱ⠶§¹®ÀÌ´Ù. ÄÄÆÄÀÏ·¯ÀÇ ÀÌ ¼ºñ½º´Â »ý¼ºÀÚ°¡ Çϳªµµ ¾øÀ» ¶§¸¸ Á¦°øµÇ¸ç ´Ù¸¥ »ý¼ºÀÚ°¡
ÀÖÀ¸¸é µðÆúÆ® »ý¼ºÀÚ¸¦ ÀÚµ¿À¸·Î Á¤ÀÇÇÏÁö ¾Ê´Â´Ù. ±×·¡¼ ´ÙÀ½ ÄÚµå´Â ¿¡·¯ 󸮵ȴÙ.
class Car {
String
name;
boolean
gasoline;
Car(String
name, boolean gasoline) {
this.name
= name;
this.gasoline
= gasoline;
}
....
}
Car korando = new Car();
korando.name = "ÄÚ¶õµµC";
korando.gasoline = false;
Car(String, boolean) »ý¼ºÀÚ°¡ ÀÖÀ¸´Ï ÄÄÆÄÀÏ·¯´Â µðÆúÆ®
»ý¼ºÀÚ¸¦ Á¤ÀÇÇÏÁö ¾ÊÀ¸¸ç µû¶ó¼ new Car() ¹®ÀåÀº È£ÃâÇÒ »ý¼ºÀÚ¸¦ ãÁö ¸øÇÑ´Ù. Ŭ·¡½º¸¦ ¸¸µç °³¹ßÀÚ°¡ ÀÚµ¿Â÷¸¦ ¸¸µé ¶§´Â À̸§°ú ¿¬·á Á¾·ù¸¦ ¹Ýµå½Ã ÁöÁ¤Ç϶ó´Â °ÍÀ» ¸í½ÃÇßÀ¸¹Ç·Î ÄÄÆÄÀÏ·¯°¡
µðÆúÆ® »ý¼ºÀÚ¸¦ ¸¸µé ÀÌÀ¯°¡ ¾ø´Ù.
ÀÌ Å¬·¡½ºÀÇ »ç¿ëÀÚ´Â ¹Ýµå½Ã new Car("¼Ò³ªÅ¸", true) ½ÄÀ¸·Î Â÷À̸§°ú ¿¬·á Á¾·ù¸¦ ¹àÇô¾ß ÇÑ´Ù. ¸¸¾à
Á¤ Àμö¾øÀÌ °´Ã¼¸¦ »ý¼ºÇÏ°í ½Í´Ù¸é ¸ðµç »ý¼ºÀÚ¸¦ ¾ø¾Ö ÄÄÆÄÀÏ·¯°¡ µðÆúÆ® »ý¼ºÀÚ·Î Á¤ÀÇÇϵµ·Ï Çϰųª ¾Æ´Ï¸é µðÆúÆ® »ý¼ºÀÚµµ ¿À¹ö·ÎµùÇÏ¿© Àμö¾øÀÌ
°´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖÀ½À» ¸í½ÃÇØ¾ß ÇÑ´Ù.
defctor |
½ÇÇà°á°ú |
class Car { String
name; boolean
gasoline; Car()
{ } Car(String
name, boolean gasoline) { this.name
= name; this.gasoline
= gasoline; } void
run() { if
(gasoline) { System.out.println("ºÎ¸ª
ºÎ¸ª"); }
else { System.out.println("´úÄÈ
´úÄÈ"); } } void
stop() { System.out.println("³¢ÀÌÀÍ"); } } class JavaTest { public
static void main(String[] args) { Car
sonata = new Car("¼Ò³ªÅ¸", true); sonata.run(); Car
korando = new Car(); korando.name
= "ÄÚ¶õµµC"; korando.gasoline
= false; korando.run(); } } |
ºÎ¸ª ºÎ¸ª ´úÄÈ ´úÄÈ |
µÎ °³ÀÇ »ý¼ºÀÚ°¡ ¿À¹ö·ÎµùµÇ¾î ÀÖ´Ù. Car(String, boolean) »ý¼ºÀÚ¸¦
È£ÃâÇÏ¿© Çʵ带 ¿øÇÏ´Â ¹æ½ÄÀ¸·Î ÃʱâÈÇÏ´Â °ÍÀÌ °¡Àå ÀÌ»óÀûÀÌ´Ù. ÀÌ »ý¼ºÀÚ ¿Ü¿¡µµ Àμö¸¦ ¹ÞÁö ¾Ê´Â
µðÆúÆ® »ý¼ºÀÚµµ Á÷Á¢ Á¤ÀÇÇØ µÎ¾î new Car() È£Ãâ¹®À¸·Î °´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì Çʵå´Â ±âº»°ªÀ¸·Î ÃʱâÈµÇ¸ç ¿øÇÏ´Â °ªÀ» Á÷Á¢ ´ëÀÔÇØ¾ß ÇÑ´Ù.
Car Ŭ·¡½º´Â ¿ö³« ´Ü¼øÇؼ µðÆúÆ® »ý¼ºÀÚ°¡ º°¹Ý ÇÒ ÀÏÀÌ ¾ø°í
Àμö¸¦ ¹ÞÁö ¾Ê¾Æ Çʵ带 ÃʱâÈÇÒ ¼öµµ ¾ø´Ù. º¹ÀâÇÑ Å¬·¡½º´Â Çʵå ÃʱâÈ ¿Ü¿¡µµ ³×Æ®¿÷ ¿¬°áÀ̳ª µ¥ÀÌÅͺ£À̽º
¿ÀÇ µîÀÇ ÀÛ¾÷ÀÌ ÇÊ¿äÇѵ¥ ÀÌ·± ÀÛ¾÷Àº Àμö¾øÀ̵µ ÇÒ ¼ö ÀÖ¾î µðÆúÆ® »ý¼ºÀÚ°¡ ó¸®ÇÑ´Ù.
µðÆúÆ® »ý¼ºÀÚ´Â °´Ã¼ ÀÚµ¿ »ý¼ºÀ̳ª Á÷·ÄÈ µî¿¡ ²À ÇÊ¿äÇϸç ÀÌ·± Ŭ·¡½º´Â µðÆúÆ® »ý¼ºÀÚ°¡ ÇʼöÀÌ´Ù. ÀÚ¼¼ÇÑ °ÍÀº °ü·Ã ºÎºÐ¿¡¼ ¾Ë¾Æº¸±â·Î ÇÏ°í ¿©±â¼´Â °³¹ßÀÚ°¡ »ý¼ºÀÚ¸¦ Á¤ÀÇÇÏÁö ¾ÊÀ¸¸é Àμö ¾ø´Â µðÆúÆ® »ý¼ºÀÚ°¡
ÀÚµ¿À¸·Î Á¤Àǵȴٴ °Í¸¸ ÀÌÇØÇÏ°í ³Ñ¾î°¡ÀÚ.
»ý¼ºÀÚ´Â Äڵ带 ½ÇÇàÇÑ´Ù´Â ¸é¿¡¼ ºÐ¸í ¸Þ¼µåÀÌÁö¸¸ ¸ÃÀº ÀÓ¹«°¡ ÃʱâÈ·Î Á¤ÇØÁ® ÀÖ´Ù´Â ¸é¿¡¼ Ư¼öÇϸç ÀϹÝ
¸Þ¼µå¿Í ´ÙÀ½°ú °°Àº Â÷ÀÌÁ¡ÀÌ ÀÖ´Ù.
l »ý¼ºÀÚ´Â
°´Ã¼ »ý¼º½Ã¿¡ new ¿¬»êÀÚ¿¡ ÀÇÇØ ÀÚµ¿À¸·Î È£ÃâµÈ´Ù. ÄÄÆÄÀÏ·¯°¡
»ý¼ºÀÚ¸¦ ãÀ¸·Á¸é À̸§ÀÌ °íÁ¤ÀûÀ̾î¾ß ÇÏ¸ç ±×·¡¼ Ŭ·¡½º À̸§°ú °°Àº À̸§À» ¾´´Ù.
l Ãʱâȸ¸
ÇϹǷΠ¸®ÅÏÀÇ °³³äÀÌ ¾ø´Ù. ¸®ÅÏÇÒ °ªÀÌ ¾ø°í ¸®ÅÏ°ªÀ» ¹Þ¾ÆÁÙ ´ë»óµµ ¾øÀ¸¸ç ¸®ÅÏ Å¸ÀÔÀ» ¸í½ÃÇÒ ÇÊ¿ä°¡
¾ø´Ù. ½ÉÁö¾î void¶ó°í ÀûÀ» ÇÊ¿äµµ ¾ø´Ù.
l »ý¼ºÀÚ´Â
°´Ã¼¸¦ »ý¼ºÇÒ ¶§ µü ÇÑ ¹ø¸¸ È£ÃâÇÒ ¼ö ÀÖ´Ù. ÇÏ´Â ÀÏÀÌ ÃʱâÈÀ̹ǷΠ»ç½Ç µÎ ¹ø È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø´Ù. Ãʱâȶó´Â ¸» ÀÚü°¡ ÀÏȸÀûÀÎ °³³äÀÌ´Ù.
l °´Ã¼ »ý¼º½Ã
¿Ü¿¡ »ý¼ºÀÚ¸¦ Á÷Á¢ È£ÃâÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø´Ù. ´Ü, ¿¹¿ÜÀûÀ¸·Î
»ý¼ºÁß¿¡ »ý¼ºÀÚ³¢¸®´Â »óÈ£ È£Ãâ °¡´ÉÇÏ´Ù.
l ³ªÁß¿¡ »ó¼ÓÆí¿¡¼
´Ù½Ã ¾Ë¾Æº¸°ÚÁö¸¸ »ý¼ºÀÚ´Â ÇØ´ç Ŭ·¡½º¸¸À» À§ÇØ Á¸ÀçÇϹǷΠÀÚ½Ä Å¬·¡½º·Î »ó¼ÓµÇÁö ¾Ê´Â´Ù.
ÀÌ·± Ư¼ö¼º ¶§¹®¿¡ »ý¼ºÀÚ´Â ¸Þ¼µå·Î ºÐ·ùÇÏÁö ¾Ê°í ±×³É »ý¼ºÀÚ¶ó°í ºÎ¸£¸ç Ŭ·¡½º ´ÙÀ̾î±×·¥À» ±×¸± ¶§ µû·Î
±×¸°´Ù. »ý¼ºÀÚ¿¡¼ ´Ù¸¥ »ý¼ºÀÚ¸¦ È£ÃâÇÒ ¶§´Â ±âº» ÃʱâÈ ÈÄ¿¡ Ãß°¡ Ãʱâȸ¦ ÇÏ´Â °ÍÀÌ ³í¸®¿¡ ¸Â¾Æ
¹Ýµå½Ã ù ÁÙ¿¡¼ ¿ì¼±ÀûÀ¸·Î È£ÃâÇØ¾ß ÇÑ´Ù. °¡·É Çʵ尪 ÀϺθ¦ ¸ÕÀú ÃʱâÈÇÑ ÈÄ ´Ù¸¥ »ý¼ºÀÚ¸¦ È£ÃâÇÑ´Ù°í
ÇØ º¸ÀÚ.
Time(boolean am, int hour, int minute) {
am
= false;
this(am,
hour, minute, 0);
}
ÀÌ·± Äڵ带 Çã¿ëÇÏ¸é ¸ÕÀú ¼öÇàÇÑ ÃʱâÈ°¡ ³ªÁß¿¡ È£ÃâÇÑ »ý¼ºÀÚ¿¡ ÀÇÇØ È¿·ÂÀÌ ¾ø¾îÁö°Å³ª ¹«ÀǹÌÇØÁø´Ù. ±×·¡¼ ´Ù¸¥ »ý¼ºÀÚ¸¦ ¸ÕÀú È£ÃâÇÏ¿© ±âº» Ãʱâȸ¦ ¼öÇàÇÑ ÈÄ ´õ ÇÊ¿äÇÑ Ãʱâȸ¦ Çϵµ·Ï µÇ¾î ÀÖÀ¸¸ç this ±¸¹®ÀÌ Ã¹ ÁÙ ÀÌÈÄ¿¡ ¿À¸é ¿¡·¯ 󸮵ȴÙ.
»ý¼º°ú Ãʱâȶó´Â µ¿ÀÛÀº º»ÁúÀûÀ¸·Î ÀÏȸÀûÀÌ´Ù. µü ÇÑ ¹ø¸¸, ±×°Íµµ °´Ã¼°¡ ¸¸µé¾îÁú ¶§¸¸ È£ÃâÇÒ ¼ö ÀÖ´Ù. ¸¸¾à °´Ã¼ »ý¼º ÈÄ¿¡µµ
»ý¼ºÀÚ¸¦ ¸¶À½´ë·Î È£ÃâÇÒ ¼ö ÀÖ´Ù¸é °´Ã¼ ³»ºÎ¿¡¼ ´ÙÀ½ Äڵ尡 °¡´ÉÇØÁø´Ù.
this("Á¦³×½Ã½º",
true);
ÀÌ·¸°Ô µÇ¸é ÄÚ¶õµµ°¡ °©ÀÚ±â Á¦³×½Ã½º°¡ µÇ¾î ´Ù¸¥ °´Ã¼·Î Å»¹Ù²ÞÇØ ¹ö¸°´Ù. ¿ÏÀüÈ÷
´Ù¸¥ °´Ã¼°¡ ÇÊ¿äÇÏ´Ù¸é ¾Æ¿¹ »õ·Î¿î °´Ã¼¸¦ Çϳª ´õ ¸¸µå´Â °ÍÀÌ ¿ÇÁö ±âÁ¸ °´Ã¼¸¦ ÀçÃʱâÈÇÏ´Â °ÍÀº ´ë°³ÀÇ °æ¿ì ºÒÇÊ¿äÇÏ¸ç ¹Ù¶÷Á÷ÇÏÁöµµ ¾Ê´Ù. ±×·¡¼ »ý¼ºÀÚ¸¦ ÀÓÀǷΠȣÃâÇÏ´Â °ÍÀº Çã¿ëÇÏÁö ¾Ê´Â´Ù.
¸¸¾à ±»ÀÌ ÀçÃʱâÈ ±â´ÉÀ» ³Ö°í ½Í´Ù¸é ¹æ¹ýÀÌ ÀüÇô ¾ø´Â °ÍÀº ¾Æ´Ï´Ù. »ç¿ëÇÏ´ø
°´Ã¼¸¦ óÀ½ »óÅ·ΠµÇµ¹¸°´Ù°Å³ª ±ú²ýÇÑ »óÅ·Π¸®¼ÂÇÏ´Â °æ¿ì´Â ½Ç¹«¿¡¼ Á¾Á¾ ÀÖ´Ù. ÀÌ·² ¶§´Â ÃʱâÈ
Äڵ带 »ý¼ºÀÚ¿¡ µÎÁö ¸»°í º°µµÀÇ ÃʱâÈ Àü´ã ¸Þ¼µå¸¦ µû·Î ¸¸µç´Ù.
init |
½ÇÇà°á°ú |
class Car { String
name; boolean
gasoline; Car(String
name, boolean gasoline) { init(name,
gasoline); } void
init(String name, boolean gasoline) { this.name
= name; this.gasoline
= gasoline; } void
run() { if
(gasoline) { System.out.println("ºÎ¸ª
ºÎ¸ª"); }
else { System.out.println("´úÄÈ
´úÄÈ"); } } void
stop() { System.out.println("³¢ÀÌÀÍ"); } } class JavaTest { public
static void main(String[] args) { Car
korando = new Car("ÄÚ¶õµµC", false); korando.run(); korando.stop(); korando.init("Á¦³×½Ã½º", true); korando.run(); korando.stop(); } } |
´úÄÈ ´úÄÈ ³¢ÀÌÀÍ ºÎ¸ª ºÎ¸ª ³¢ÀÌÀÍ |
»ý¼ºÀÚ°¡ ÇÏ´ø Ãʱâȸ¦ init¶ó´Â ´Ù¸¥ ¸Þ¼µå·Î ¾÷¹« ÀÌ°üÇÏ°í »ý¼ºÀÚ´Â init¸¦ È£ÃâÇÏ¿© Ãʱâȸ¦ ¼öÇàÇÑ´Ù. init´Â ÀÏ¹Ý ¸Þ¼µåÀ̹ǷÎ
°´Ã¼ »ý¼º ÈÄ¿¡µµ ¾ó¸¶µçÁö È£ÃâÇÏ¿© °´Ã¼¸¦ ÀçÃʱâÈÇÒ ¼ö ÀÖ´Ù. main¿¡¼ ÄÚ¶õµµ·Î »ý¼ºÇÑ Â÷¸¦ Á¦³×½Ã½º·Î
¹Ù²Ù¾î º¸¾Ò´Ù.
»ý¼ºÀÚ ÀÚü´Â ÇÑ ¹ø¸¸ È£ÃâÇÒ ¼ö ÀÖ´Ù´Â Á¦¾àÀÌ ÀÖ¾î ¿©·¯ ¹ø È£Ãâ °¡´ÉÇÑ ÀÏ¹Ý ¸Þ¼µå·Î ÃʱâÈ Äڵ带 ¿Å±ä
°Í »ÓÀÌ´Ù. ¹®¹ýÀû Á¦¾àµµ ÀÀ¿ë¸¸ Çϸé ÇÇÇØ°¥ ¼ö ÀÖ´Ù. ´Ü
¹®¹ýÀÌ ¾Æ¹« ÀÌÀ¯¾øÀÌ ±ÝÁöÇÏ´Â °ÍÀº ¾Æ´Ï¹Ç·Î °¡±ÞÀû ¹®¹ýÀÇ ¹üÀ§ ¾È¿¡¼ Äڵ带 ÀÛ¼ºÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù. ²À
ÇÊ¿äÇÏ°í ÇÕ´çÇÑ ÀÌÀ¯°¡ ÀÖÀ» ¶§¸¸ ÀÌ·± ±â¹ýÀ» »ç¿ëÇØ¾ß ÇÑ´Ù.