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ºÎ ÀúÀÚ:ÃÖ¿µ°ü |