๐™น๐šŠ๐šŸ๐šŠ

[Java] Serializable ์ง๋ ฌํ™”

ํ•ด๋ฒ„๋‹ˆ 2024. 5. 24. 09:43
๋ฐ˜์‘ํ˜•

 

 

์ „์ž์ •๋ถ€ ํ”„๋ ˆ์ž„์›Œํฌ ์ฝ”๋“œ ๋ถ„์„์„ ํ•˜๋˜ ์ค‘ ๋ฌธ๋“ ๊ถ๊ธˆํ•ด์ ธ์„œ Serializable๋ฅผ ์ฐพ์•„๋ดค๋‹ค.

 

 

 

 

 

 

 

(์•ฝ 1๋…„ ์ „์— velog์—๋‹ค ์ •๋ฆฌํ•œ ๋‚ด์šฉ ใ…Žใ…Ž..)

์ž‘๋…„์— ์ˆ˜์—…์„ ๋“ค์œผ๋ฉด์„œ ์ •๋ฆฌํ–ˆ๋Š”๋ฐ, ์ด๋•Œ์—๋„ ์™„๋ฒฝํžˆ ์ดํ•ดํ•˜๊ณ  ๋„˜์–ด๊ฐ€์ง€ ๋ชปํ–ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

์ดํ•ด๋Š” ๋˜์ง€๋งŒ, ์™œ ์จ์•ผํ•˜๋Š”์ง€ ์–ธ์ œ ์จ์•ผํ•˜๋Š” ์ง€ ๋“ฑ์— ๋Œ€ํ•ด ์ดํ•ด๊ฐ€ ์•ˆ ๋๋‹ค.

 

 

 

 

 

 

 

 

์ง๋ ฌํ™” ํ•˜๋Š” ์ด์œ 

์ผ๋‹จ ์ง๋ ฌํ™”์— ๋Œ€ํ•ด ๊ทผ๋ณธ์ ์œผ๋กœ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๊ฐ์ฒด๋ฅผ ์ƒ์ž๋กœ ๋น„์œ ๋ฅผ ํ•˜๊ฒ ๋‹ค.

์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ƒ์ž๊ฐ€ ์žˆ์„ ๋•Œ, ์ด ์ƒ์ž๋“ค์„ ํ•œ๊บผ๋ฒˆ์— ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ๋ณด๋‚ด๊ธฐ์—” ์–‘์ด ๋งŽ๊ณ  ํฌ๊ธฐ๊ฐ€ ์ปค์„œ ํž˜๋“ค๋‹ค.

๊ทธ๋ž˜์„œ ๊ฐ ์ƒ์ž๋ฅผ ํ•˜๋‚˜์”ฉ ๊บผ๋‚ด์„œ ์ค„์„ ์„ธ์›Œ์„œ ๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ณผ์ •์„ ์ง๋ ฌํ™”๋ผ๊ณ  ํ•œ๋‹ค.

 

 

 

 

 

 

 

 

 

์ง๋ ฌํ™”

์ง๋ ฌํ™”๋Š” ๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋ฉด์„œ ๊ฐ์ฒด๋ฅผ ๋‹ค๋ฅธ ํ™˜๊ฒฝ์œผ๋กœ ์ „์†กํ•˜๊ฑฐ๋‚˜ ์ €์žฅํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ธ ๊ธฐ๋Šฅ์ด๋‹ค.

 

 

์ปดํ“จํ„ฐ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค.

๊ฐ์ฒด๋Š” ๋ฐ”์ดํŠธ ๋‹จ์œ„๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์ „์†กํ•˜๊ฑฐ๋‚˜ ์ €์žฅํ•˜๋ ค๋ฉด ๋ฐ”์ดํŠธ ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•œ๋‹ค.

์ง๋ ฌํ™”๋Š” ๊ฐ์ฒด๋ฅผ ๋ฐ”์ดํŠธ ํ˜•ํƒœ๋กœ ์ „ํ™˜์‹œ์ผœ์ฃผ๋Š”๋ฐ, ์บก์Šํ™”๋ฅผ ์œ ์ง€ํ•˜๋ฉด์„œ ๋ณ€ํ™˜ํ•œ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ๋กœ ๊ฐ์ฒด๋ฅผ ๋ณด๋‚ผ ๋•Œ๋Š” ๋ฐ”์ดํŠธ ์ŠคํŠธ๋ฆผ์œผ๋กœ ์ „์†ก(์ง๋ ฌํ™” ํ›„) ํ•˜๊ณ ,

ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ๋ฐ›์€ ๋ฐ”์ดํŠธ ์ŠคํŠธ๋ฆผ์„ ์—ญ์ง๋ ฌํ™”ํ•˜์—ฌ ์›๋ž˜ ๊ฐ์ฒด๋กœ ๋ณต์›ํ•œ๋‹ค.

 

์ถ”๊ฐ€์ ์œผ๋กœ, ๊ฐ์ฒด๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋˜๋Š”๋ฐ, ์ด ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ผ์‹œ์ ์ด๊ณ  ํœ˜๋ฐœ์„ฑ์ด๋‹ค.

ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ๊ฐ์ฒด๋Š” ์‚ฌ๋ผ์ง€๊ธฐ์—, ๊ฐ์ฒด๋ฅผ ์ง๋ ฌํ™”ํ•˜์—ฌ ํŒŒ์ผ์— ์ €์žฅํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋œ ํ›„์—๋„ ๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ์ €์žฅ์€ ๋กœ์ปฌ ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์ €์žฅํ•  ์ˆ˜๋„ ์žˆ๊ณ , ์›๊ฒฉ ์„œ๋ฒ„์— ์ „์†กํ•  ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋ฉ”์‹œ์ง€ ํ์— ๋„ฃ์„ ์ˆ˜๋„ ์žˆ๋‹ค.

 

 

 

 

 

 

 

 

 

serialVersionUID

private static final long serialVersionUID = -8274004534207618049L;

 

๊ฐ ํด๋ž˜์Šค๋งˆ๋‹ค serialVersionUID๊ฐ€ ์ง€์ •๋œ๋‹ค.

IDE ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด serialVersionUID๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

ํด๋ž˜์Šค์˜ ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด serialVersionUID๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.

์ด ํด๋ž˜์Šค์˜ ๋ชจ๋“  ๊ฐ์ฒด๋Š” ๋™์ผํ•œ serialVersionUID๋ฅผ ๊ณต์œ ํ•œ๋‹ค.

 

 

 

 

 

๋ฐ˜์‘ํ˜•