๐ŸšฉtoString ๋ฉ”์„œ๋“œ

๋ฆฌ๋ฌด rimu ยท2023๋…„ 1์›” 1์ผ
0

Java

๋ชฉ๋ก ๋ณด๊ธฐ
15/35
post-thumbnail

โค๏ธtoString ๋ฉ”์„œ๋“œ

  • ๋ชจ๋“  ํด๋ž˜์Šค ์ธ์Šคํ„ด์Šค(๊ฐ์ฒด)์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ
  • ์ด ๋ฉ”์„œ๋“œ๋ฅผ ํด๋ž˜์Šค์—์„œ ์ •์˜ํ•˜๋Š” ๊ฒƒ์€ ๊ฐœ๋ฐœ์ž ๊ฐ„์˜ ์•ฝ์†์ž„!!
  • ์›๋ž˜ toString์€ java.lang ํŒจํ‚ค์ง€์˜ ํด๋ž˜์Šค์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋œ ๋ฉ”์„œ๋“œ์ด๋ฉฐ
    "ํด๋ž˜์Šค ์ด๋ฆ„@ํ•ด์‹œ๊ฐ’"์˜ ํ˜•ํƒœ๋กœ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜
public class Object {
	// ์ค‘๋žต
    public String toString() {
    	return getClass().getName() + "@" + Integer.toHexString(hashCode());
   	}
    // ์ค‘๋žต
}

Java์˜ ๋ชจ๋“  ํด๋ž˜์Šค๋Š” Object ํด๋ž˜์Šค์˜ ์ž์‹ ํด๋ž˜์Šค(Object๋ฅผ ์ƒ์†๋ฐ›์Œ)
์ด๋•Œ toString ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ค์‹œ ์ •์˜ํ•˜๋ฉด 'Object ํด๋ž˜์Šค์˜ toString ๋ฉ”์„œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋“œํ–ˆ๋‹ค.'
๋ผ๊ณ  ํ•จ

๐Ÿ‘Object์˜ toString()

toString() ์˜ˆ์‹œ

public class Test {

	public static void main(String[] args) {
		StringTest stringTest = new StringTest();
		
		System.out.println(stringTest.toString());
        // ์ถœ๋ ฅ ๊ฒฐ๊ณผ : StringTest@2f92e0f4
	}

}

class StringTest {
	int a;
	String b;
}

๊ฐ์ฒด์— toString()์„ ์‚ฌ์šฉํ•˜๋ฉด, Object์— ์ •์˜๋œ ํ˜•ํƒœ ๋Œ€๋กœ ํด๋ž˜์Šค๋ช…@ํ•ด์‹œ์ฝ”๋“œ ์˜ ํ˜•ํƒœ๋กœ ์ถœ๋ ฅ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

๐ŸฌString์˜ toString()

public static void main(String[] args) {
		String str = "abcdef";
		
		System.out.println(str.toString());
		// ์ถœ๋ ฅ ๊ฒฐ๊ณผ : abcdef
	}

String ํƒ€์ž…์—์„œ toString()์„ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ,
String ํด๋ž˜์Šค ๋‚ด๋ถ€์— ์žฌ์ •์˜ ๋œ ๋Œ€๋กœ ๋ฌธ์ž์—ด์„ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅ!

์˜ค๋ฒ„๋ผ์ด๋“œ(Override)

  • '์˜ค๋ฒ„๋ผ์ด๋“œ(Override)'๋Š” ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค๊ฐ€ ๋ถ€๋ชจ์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ๋‹ค์‹œ ์ •์˜ํ•˜๋Š” ๊ฒƒ
    ๋‹น์—ฐํ•œ ๋ง์ด์ง€๋งŒ ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค์—์„œ toString ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ค์‹œ ์ •์˜ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ถ€๋ชจ์ธ Object ํด๋ž˜์Šค์˜ toString์„ ๊ทธ๋Œ€๋กœ ์ƒ์†๋ฐ›์Œ
  • ์ž๋ฐ”์˜ ๋ฉ”์„œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋“œํ•  ๋•Œ๋Š” ํด๋ž˜์Šค์˜ ์ ‘๊ทผ ์ œํ•œ์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†์Œ
    ํ•ญ์ƒ public์œผ๋กœ ์ •์˜ํ•ด์•ผ ํ•จ
  • ํ•˜์ง€๋งŒ ํด๋ž˜์Šค์—์„œ toString ๋ฉ”์„œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋“œํ•  ๋•Œ๋Š” ํด๋ž˜์Šค์˜ ํŠน์„ฑ์ด๋‚˜ ์ธ์Šคํ„ด์Šค์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ ์ ˆํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ

์ธ์Šคํ„ด์Šค(๊ฐ์ฒด)์˜ ์ƒํƒœ๋ฅผ ๊ฐ„๋‹จํ•œ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋Š”
public String toString() ํ˜•์‹์œผ๋กœ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ~
์™œ๋ƒํ•˜๋ฉด ์ธ์Šคํ„ด์Šค(๊ฐ์ฒด)์˜ ์ƒํƒœ๋ฅผ ์ถœ๋ ฅํ•  ๋•Œ ์ธ์Šคํ„ด์Šค๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ์— ํ•จ๊ป˜ ๋„ฃ์œผ๋ฉด
์ž๋™์œผ๋กœ ํ˜ธ์ถœ๋˜๊ธฐ ๋•Œ๋ฌธ!

profile
JAVA / SQL / Spring ์„ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค ๐Ÿฅ

0๊ฐœ์˜ ๋Œ“๊ธ€