¼Ò¼³°°ÀºÀÚ¹Ù2ºÎ  Á¦10Àå ObjectŬ·¡½º  10.3 toString¸Þ¼­µå  

 

10.3 toString()

 toString¸Þ¼­µåµµ equals¿Í °°ÀÌ ÀçÁ¤ÀÇÇØ¼­ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µåÀÇ ÁÖ¸ñÀûÀº Ŭ·¡½ºÀÇ ¿ä¾àÁ¤º¸¸¦ Ãâ·ÂÇÏ´Â ¿ëµµ·Î ¸¹ÀÌ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå¸¦ ÀçÁ¤ÀÇÇÏ¿© ´Ù¸¥ StringÀ» ¹ÝȯÇÏ´Â ¸Þ¼­µå·Î ¸¸µé¾ú´Ù¸é System.out.println¿¡¼­ °´Ã¼ ±× ÀÚü¸¦ Ãâ·ÂÇϸé toStringÀÌ È£ÃâµÇ¾î Ãâ·Â µË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¸¦ Çѹø º¸½Ã±â ¹Ù¶ø´Ï´Ù.

 

EqualsOverride.java

class EqualsOverride{

             private String name;

             private int id;

             public EqualsOverride(String name, int id){

                           this.name = name;

                           this.id = id;

             }

             public String toString(){

                           return name + " " + id;

             }

}

public class EqualsOverrideMain{

             public static void main(String[] args){

                           EqualsOverride e1 = new EqualsOverride("È«±æµ¿", 1000);

                           EqualsOverride e2 = new EqualsOverride("È«±æµ¿", 2000);

                           System.out.println("e1:" +  e1);

                           System.out.println("e2:" +  e2);

                           System.out.println("e2.toString()" +  e2.toString());

             }

}

C:\examples\10.Object>javac EqualsOverrideMain.java

C:\examples\10.Object>java EqualsOverrideMain

e1:È«±æµ¿ 1000

e2:È«±æµ¿ 2000

e2.toString():È«±æµ¿ 2000

 

ÀÌ ¿¹Á¦´Â 10.2Àý¿¡¼­ equals¸Þ¼­µå¸¸À» »« °ÍÀÔ´Ï´Ù. toString¸Þ¼­µå¸¦ ÀçÁ¤ÀÇÇϰí ÀÖ½À´Ï´Ù. ±×¸®°í toString¿¡´Â ¸â¹öº¯¼öÀÎ name°ú id¸¦ ¹­¾î¼­ ¸®ÅÏÇϰí ÀÖ½À´Ï´Ù.

 

n        public String toString(){

n         return name + " " + id;

n        }

 

±×¸®°í °´Ã¼¸¦ ¸¸µé¾î¼­ Ãâ·ÂÇÒ ¶§ °´Ã¼ ±× ÀÚü¸¦ Ãâ·ÂÇϰí ÀÖ½À´Ï´Ù. ÀÌ ¶§ println¿¡¼­´Â toString¸Þ¼­µå¸¦ È£ÃâÇÏ°Ô µË´Ï´Ù. ¹°·Ð toString¸Þ¼­µå¸¦ Á÷Á¢È£ÃâÇØµµ °°Àº °á°ú°¡ ³ª¿É´Ï´Ù.

 

n        System.out.println("e1:" +  e1);

n        System.out.println("e2:" +  e2);

n        System.out.println("e2.toString()" +  e2.toString());

 

 ¸¸¾à, ¿©·¯ºÐÀÇ Å¬·¡½º¸¦ Ãâ·ÂÇßÀ» ¶§ ¾î¶°ÇÑ Á¤º¸¸¦ º¸¿©ÁØ´Ù¸é ¾î¶² °ªÀ» Ãâ·ÂÇϰí½ÍÀ¸½Ê´Ï±î? ¾Æ¸¶µµ ¿©·¯ºÐÀº ±× Ŭ·¡½ºÀÇ °¡Àå ´Ü¼øÇÑ Á¤º¸¸¸À» Ãâ·ÂÇÏ´Â toStringÀ» ¸¸µé°Å¶ó°í »ý°¢µË´Ï´Ù. ºñ½ÁÇÑ ¿¹·Î new Date()¶ó°í ÇØ¼­ °´Ã¼¸¦ »ý¼ºÇÏ°í ¹Ù·Î Ãâ·ÂÇØ º¸½Ê½Ã¿À. ¸ðµç ³¯Â¥ÀÇ Á¤º¸°¡ ÀüºÎÃâ·ÂµË´Ï´Ù. À̰͵µ toStringÀ» ÀçÁ¤ÀÇÇØ¼­ ³¯Â¥¿¡ ¸Â´Â Á¤º¸¸¦ Ãâ·ÂÇÏ´Â °ÍÀ¸·Î ¹Ù²Û °ÍÀÔ´Ï´Ù.

 

DateMain.java

import java.util.Date;

public class DateMain{

             public static void main(String[] args){

                           System.out.println(new Date());

                           System.out.println(new Date().toString());

             }

}

C:\examples\10.Object>javac DateMain.java

 

C:\examples\10.Object>java DateMain

Sun Jun 24 23:40:36 GMT+09:00 2001

Sun Jun 24 23:40:36 GMT+09:00 2001

 

¿ì¸®´Â equals¿Í toString¸Þ¼­µå¿¡ ´ëÇØ¼­ ¾Ë¾Æ º¸¾Ò½À´Ï´Ù. ÀÌ µÎ ¸Þ¼­µå´Â ¾ÆÁÖ ±âº»ÀûÀÎ ±â´ÉÀ» °¡Áö°í ÀÖÀ¸¸ç ÀçÁ¤ÀÇÇØ¼­ ¸¹ÀÌ »ç¿ëÇÑ´Ù´Â °øÅëÁ¡ÀÌ ÀÖ½À´Ï´Ù. ¹°·Ð, »ç¿ëÇÏÁö ¾Ê¾Æµµ ¹«°üÇÏÁö¸¸ À߸¸ »ç¿ëÇÑ´Ù¸é ¾ÆÁÖ À¯¿ëÇÑ ¸éÀÌ ¸¹½À´Ï´Ù. ´ÙÀ½À¸·Î hashCode¿Í finalize¸Þ¼­µå¿¡ ´ëÇØ¼­ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.



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