Item 86. Serializable Interface

Serializable ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์‹ ์ค‘ํžˆ ๊ตฌํ˜„ํ•˜๋ผ

ํด๋ž˜์Šค ์„ ์–ธ์— implements Serializable๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ์ง๋ ฌํ™”๊ฐ€ ๊ฐ€๋Šฅํ•ด์ง€์ง€๋งŒ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ์•ผ๊ธฐํ•  ์ˆ˜ ์žˆ๋‹ค.

  1. ํ•œ ๋ฒˆ ์ ์šฉํ•˜๊ณ  ๋ฆด๋ฆฌ์Šคํ•œ ํ›„์—๋Š” ์ˆ˜์ •ํ•˜๊ธฐ ์–ด๋ ค์›€

    • ์ง๋ ฌํ™”๋œ ๋ฐ”์ดํŠธ ์ŠคํŠธ๋ฆผ ์ธ์ฝ”๋”ฉ(์ง๋ ฌํ™” ํ˜•ํƒœ)๋„ ํ•˜๋‚˜์˜ ๊ณต๊ฐœ API๊ฐ€ ๋  ์ˆ˜ ์žˆ์Œ

    • ๋˜ํ•œ ์ปค์Šคํ…€ ์ง๋ ฌํ™”๋ฅผ ํ•˜์ง€ ์•Š๊ณ  ๊ธฐ๋ณธ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด, ์ ์šฉ ๋‹น์‹œ์˜ ํด๋ž˜์Šค ๋‚ด๋ถ€ ๊ตฌํ˜„ ๋ฐฉ์‹์— ๋ฌถ์—ฌ ์ˆ˜์ • ์‹œ ์ง๋ ฌํ™” ํ˜•ํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Œ

  2. ๋ฒ„๊ทธ์™€ ๋ณด์•ˆ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์œ„ํ—˜ ์ฆ๊ฐ€

    • ๊ฐ์ฒด๋Š” ์ƒ์„ฑ์ž๋ฅผ ํ†ตํ•ด ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๊ธฐ๋ณธ์ด์ง€๋งŒ, ์—ญ์ง๋ ฌํ™”๋ฅผ ํ†ตํ•ด ์ผ๋ฐ˜์ ์ธ ์ƒ์„ฑ์ž ํ˜ธ์ถœ์„ ํ†ตํ•ด ์ƒ์„ฑ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹˜

  3. ํ•ด๋‹น ํด๋ž˜์Šค ์‹ ๋ฒ„์ „ ๋ฆด๋ฆฌ์Šค ์‹œ ํ…Œ์ŠคํŠธ ์š”์†Œ ์ฆ๊ฐ€

    • ํด๋ž˜์Šค ๋‚ด๋ถ€ ๊ตฌํ˜„ ๋ณ€๊ฒฝ ์‹œ, ๊ตฌ๋ฒ„์ „๊ณผ์˜ ์–‘๋ฐฉํ–ฅ ์ง๋ ฌํšŒ/์—ญ์ง๋ ฌํ™” ํ˜ธํ™˜์„ฑ ํ™•์ธ ํ•„์š”

    • ๋‚ด๋ถ€ ๊ตฌํ˜„์ด ๋ณ€๊ฒฝ ๋œ ์ˆ˜ ๋งŒํผ์˜ ๋ฒ„์ „ ํ…Œ์ŠคํŠธ ํ•„์š”

Serializable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์€ ์‹ ์ค‘ํžˆ ๊ฒฐ์ •ํ•ด์•ผ ํ•˜๋ฉฐ, Serializable ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„ ์‹œ ์•„๋ž˜์˜ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

  • '๋™์ž‘'ํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํด๋ž˜์Šค๋ณด๋‹จ '๊ฐ’'์„ ํ‘œํ˜„ํ•˜๋Š” ํด๋ž˜์Šค์— ์ ํ•ฉ

  • ํ•ด๋‹น ํด๋ž˜์Šค๋ฅผ ํ™•์žฅํ•˜๊ฑฐ๋‚˜ ๊ตฌํ˜„ ์‹œ ์ง๋ ฌํ™”์— ๋Œ€ํ•œ ๋ถ€๋‹ด์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ์–ด ์ƒ์†์šฉ์œผ๋กœ ์„ค๊ณ„๋œ ํด๋ž˜์Šค์—๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ

Last updated

Was this helpful?