2018년 12월 31일


공식적으로 단기 백수가 되었다.


평일에 뭐할지 고민하다가 동생이 예전에 코엑스 삐에로쇼핑을 다녀온 것이 생각나서 다녀왔다.

주말에는 줄서서 구경한다 하니 이럴때 가보는 것이 꿀이다.

혼자 둠칫거리며 갔기 때문에 사진이 많지는 않다.


삼성역에서 내려 코엑스몰로 들어간다.

별마당 도서관을 지나가야 한다.



한참을 걷다 보면 저 멀리서 삐에로쇼핑이 딱 보인다.

나도 어딘지 감이 안오는데 바닥을 보면 가는 방향이 안내되어 있다.



요지경 만물상...실제로 들어가면 본인들도 물건이 어딨는지 못찾겠다는 광고를 계속 때린다.

삐에로삐에로삐에로~ 삐에로쇼핑~ 이 노래도 엄청들린다. 지금도 내 머릿속에 계속 들리는 것 같다.



들어가보면 일본에서 볼 법한 물건들도 꽤 있다.

돈키호테를 벤치마킹했다는게 맞는것 같은데 가격은 벤치마킹이 되어있지 않다....ㅠㅠ


 


 


잡화 외에 가전들도 팔고 있다. 굳이 여기서 사야하나 싶지만 구경해본다.



충격적인건 명품도 판다...실제로 사는 사람이 있나 궁금해진다.


 


그리고 성인용품...을 파는 곳도 있다. 혼자갔기 때문에 들어가보진 않았지만

오빠랑 같이 갔으면 아마 들어갔을 것이다(오빠팔아먹기)



오후 1시 반에 들어가서 3시에 나왔으니 생각보다 오래 둘러봤는데 

특이하게 살만한 것은 많지 않다는 것이 내 생각이다.

실제로 난 가서 9만 얼마를 쓰고 나왔는데, 펼쳐보니 다 살림용품이다(주부력 상승)

굳이 삐에로쇼핑까지 가서 살 법한 물건들은 아니었다(이치란라멘 제외)



식탁 위가 지저분한 것 같지만 진짜 지저분한거다. 빨리 치우던가 해야지..



오늘은 삐에로쇼핑에서 바꾼 디퓨저를 갈아치울거다. 냄새가 썩은 걸레 같다.ㅠㅠ





크리스마스가 지났다.

작년 연애때는 오빠의 근무로 인해 25일날 간단하게 피자먹고 데이트했다.

둘 다 내년을 기대했었는데.. 올해는 오빠의 위장이 문제를 일으켜서 휴식했다. 

이쯤되면 내년 크리스마스가 기대되지 않는다ㅋㅋㅋㅋ또 무슨 문제가 있으면 안되니까

그나마 결혼해서 집이 있었다는게 다행이다.


그래도 신혼이니까(자꾸 신혼 팔아먹는 느낌이지만 결혼한지 1달 겨우 지났다)

크리스마스 분위기를 내보기로 했다.


23일 저녁

오빠가 쿠팡에서 산 중국산 트리와 

이마트에서 급하게 사온 장식과 전구로 집을 급하게 꾸미기 시작했다.

중국산 트리는 대륙의 스케일과는 달리 쁘띠한 크기를 자랑한다.

이마트 트리 장식은 5천원짜리라 그런가 딱 그만큼의 퀄리티였다(부셔진 것도 몇개 있었다)

꾸며놓고 9미터짜리 앵두전구를 걸려고 하니까 너무 길어서 저런 퀄이 나왔다. 제목을 붙이자면 크리스마스의 악몽..

그래서 급하게 전구를 제거했다.


 


오빠는 저 장식까지 하고 아파서 방에 들어가서 잠이 들었다.

나혼자 심심해서 멍때리다가 전구를 이용하여 유리창에 전구를 붙여서 트리를 만들어 보았다. 

처음 한 것 치고는 나쁘지 않았다. 

해가 질 무렵에 틀어본거라 뒤에 배경이 다 보인다. 



좀 기다리다가 해가 다 지고 다시 전구를 켜보았다.

왠지 감성감성하당.



그렇게 장식을 다 마치고 24일 크리스마스 이브날

오빠는 급성 위장염 진단을 받고 죽만 먹게 되는데...

이미 픽업 신청해놓은 케익이 아까워서 초만 붙여보았다.

아직까지 냉동실에 고이 보관되어있는 불쌍한 액션토끼 ㅠㅠ



배스킨라빈스에서 픽업해온 오버액션 토끼 케이크이다. 

저렇게 뚜껑을 열면 아래와 같이 케이크가 나온다.


 


저 뚜껑은 아래와 같이 모자(?)로도 활용 가능하다.

본인 얼굴이라 작게작게..



케이크를 사면 4,900원에 오르골램프 또는 블루투스 인형을 구매할 수 있었다.

나는 블루투스 인형을 신청했다.

24일날 근무를 하느라고 병원 다녀오는 오빠한테 픽업요청을 했는데!!!



무언가 이상하다고 생각이 들지 않는가...

베라 알바의 실수로 블루투스 인형이 오르골램프로 진화했다.

순간 교환을 요청해야하나 했는데, 동생이 오르골 램프가 더 좋다고 해서 그냥 쓰기로 했다.

이 자리를 빌어 베라 알바님께 감사드린다.


오르골 램프는 무드등 기능도 같이 있어서 여러모로 실용성이 좋다.

우리는 웨딩사진 앞에다 장식해 보았다.

진지한 포즈 앞에서 뀨 하는 표정이라 부조화스럽고 마음에 든다.



뭐 한거 없다고 생각했는데, 적어보니 뭔가 한것 같다.

내년에는 제발 별 탈 없는 크리스마스가 되었으면 한다.





오늘은 크리스마스지만, 오빠의 급성 위장염으로 나가지 않고 밀렸던 신혼여행 포스트를 써본다.

작년에도 밤새서 일하고 올해는 아프고 우리는 크리스마스와 인연이 없는 것이 분명하다.


도착해서 수속을 밟고 짐을 찾고 나왔다.

습했지만 날씨는 포근했던 걸로 기억한다.



한국에서 미리 예약한 오하나택시(http://ohanataxi.com/shop/)를 타고 카할라 호텔로 이동했다.



사진은 찍지 않았으나 밴 형식의 택시며, 한국인 기사님들로 구성되어 있다. 

우리는 여행기간 총 2명의 기사님을 만났는데, 두분 다 친절하셨고 여행 팁도 많이 알려주셨다.

가격은 왕복 $80달러로 기억한다. 우리는 카할라 호텔이었기 때문에 조금 차이가 있을 거고 와이키키로 들어가면 이것보단 저렴할것이다.


로비의 모습이다. 뭔가 부잣집 별장같은 느낌이다. 왼쪽 사진은 호텔의 라운지 바 "더 베란다"고 오른쪽 사진은 대기 공간이다.


 


도착했을때는 3시가 되지 않은 시간이었고, 미국은 얼리 체크인이 잘 되지 않는다고 들어서 긴장했는데(아 물론 의사소통도)

흔쾌히 체크인을 진행해주셨다. 체크인 시 물수건과 사진에서 오빠가 걸고 있는 레이를 제공해 준다. 



여기서 작은 에피소드가 있었는데, 적어주신 숫자가 6인지 9인지 몰라섴ㅋㅋㅋㅋㅋㅋ해맸던 기억이 있다. 아 물론 6층이었다.

겨우 방에 들어갈 수 있었다. 우리가 선택한 방은 시닉뷰(마운틴뷰)였다. 

문을 열면 바로 보이는 뷰가 이정도다. 굳이 오션뷰 선택 안해도 초록초록한 것을 좋아하시는 분이면 추천드린다.



침대는 보이는 것과 같이 퀸사이즈다. 엄청 폭신폭신하다.



여긴 화장실 방향이다. 양쪽으로 샤워실과 욕조가 분리되어 있다. 예전 자취집 사이즈만하다.



침대 앞에는 바로 소파가 존재한다.왜 근데 티비 방향이 아닐까 이제 궁금해지기 시작했다.

앞에 사람은 무시하셔도 된다.



사진에 보이는 샴페인은 호텔 측에서 허니문이라고 제공해 주셨다. 

너저분한건 기분탓이니 무시해도 좋을 것 같다.


 


짐정리를 어느정도 끝내고 옷을 갈아입고 바다로 나갔다.

필터를 하지 않아도 뷰가 저정도다. 말로 설명 못할 광경이다...!!


 


신혼여행이라고 난생 처음 비키니를 입어보았다. 다행히 모든 사람들이 헐벗은 상태라 괜찮았다.

신혼부부니까 기념사진을 남겨본다. 다된셀카에 남편끼얹기(!)



그리고 각자 사진을 찍어줬는데 흡사 나는 물에 빠진 물미역 같다 (젖은 상태 아님)



오빠 사진도 찍어주어보았다. 여기는 스노클링 아니고서는 래시가드는 매우 튀는 존재이다...!!



다정한 사진도 찍어봄 



짧은 물놀이를 마치고 와이키키로 가는 셔틀버스를 예약하였다.

카할라는 와이키키로 가는 셔틀버스를 제공한다(예약 필수, 시간은 변동되니 데스크 가서 시간 확인 필수)

버스를 기다리면서 카할라를 다녀간 유명인의 사진을 보고 있는데 어디서 익숙한 사람들의 사진이 보였다.

자세한 설명은 생략한다.


 

 


5시쯤 되어서 셔틀버스를 타러 갔다. 사진에 있는 밴은 셔틀버스는 아니지만 그냥 찍어보았다.

셔틀버스는 심플한 화이트 밴이었다.


 


약 20분이 걸려 와이키키에 도착하였다. T갤러리아 면세점 앞에서 내려주는데 돌아가는 버스를 탈때도 그 앞에서 기다리면 된다.

우리는 어차피 내일 모레 와이키키 숙소로 이동할 예정이라 바로 저녁을 먹으러 갔다.

사진에 보이는 호텔은 우리가 3일차부터 묵을 숙소이다.



우리가 첫날 선택한 식당은 크레킹 키친이다. 게, 랍스타 등을 양념에 조리해서 주는 식당이다. 

주소는 아래와 같다.



가면 해산물을 선택하고 양념 2종류를 선택한다. 우린 매운양념 하나와 화이트소스를 선택하고 갈릭라이스와 롱보드 2개를 시켰다.

매운 단계도 선택할 수 있었는데 우리는 매워봤자 얼마나 맵겠어 하면서 좀 맵게 해달라했는데 입에서 불뿜으면서 긁어먹었다.


 


저녁을 다 먹고 시간이 약간 남아서 와이키키 비치를 찾으려 했으나 실패하고 길거리 구경을 하는데

길거리 마술사한테 삥뜯겼다.. 막 와보래서 쫄래쫄래 가서 마술쇼 보다가 

뭐 10달러나 20달러 있으면 마술한대서 달래서 줬더니 안준다 ㅡㅡ 기부라고 생각하래 ㅆ..

그래서 가계부에는 삥뜯김이라고 적어놈...!!


와이키키의 저녁은 화려했다.

이렇게 첫째날이 지나갔다.



휴일이니 한숨 자러 가야겠당



대한민국 사람이라면 겨울에 늘 하는 필수코스 김장

우리집은 결혼이다 뭐다 해서 12월에 했다.


나는 전날에 일이 있어서 청주 친정(!)에 미리 내려왔다. 

오빠는 다음날 안양에서 버스타고 내려왔다(그러고보니 오빠가 며느리같은건 기분탓일까)


청주 와보니 집이 이미 김장을 하기에 최적화 되어 있었다.

그래도 나아진 것은 절임배추를 쓴다는 것이다. 

안그랬으면 전날 배추절이고 씻고....헬이다.



다음날 김장을 시작해야하는데, 속재료를 담당하신 무려 종갓집 근무하시는 이모가 서울에서 늦게 출발하셨다.

그래서 우리는 기다리다 지쳐서 막걸리를 사러 갔다^^^^^

무려 양조장에서 떠온 가덕막걸리다. 정말 맛있다. 사진에는 없지만 10리터짜리 큰통에다 받아온다.

통이 없다면 현장 구매 가능하다.


이모가 도착하시고 본격적으로 김치 속재료 제조에 들어갔다.

저렇게 김장매트에서 양념을 찹찹 섞는다.



본격적으로 배추에 양념을 바르는 작업을 했다. 김장 처음하는 오빠 인증샷 찍었다.

오빠의 초상권은 나에게 있어서 괜찮다. (오빠의견 0% 적극반영)

우리는 총 120포기를 제조해야한다. 저때는 몰랐다. 몸이 겁나 힘들다는 것을...



하다가 지쳐서 수육에 막걸리를 먹는 시간을 가졌다.

수육과 김치는 최고의 궁합이다. 

플러스 막걸리까지 마시면 김장이고 뭐고 없는거다.



먹고 나니 일하기 싫어졌지만, 아직 우리는 절반도 못했던 시점이라

있는기운 없는기운 호랑이기운까지 다 쏟아내서 김장을 완료했다.



완성된 김치는 각 집에 분배되었다.

안양 신혼집에도 지금 저 김치와 마지막에 담근 굴 겉절이까지 있는데, 익으니까 JMT이다.

난 원래 신김치 안좋아하는데 정말 맛있었다.

신김치를 좋아하는 우리오빠는 정말 각종 음식에 김치를 곁들여 먹는다. 

동생이랑 살면 맨날 김치 남았는데, 점점 줄어들어서 보기 좋다.



이번 김장으로 느낀점이 있다면, 김치는 역시 홈메이드다.

사먹는거와 차원이 다르다. 익으면 더 맛있다.

그리고 가족간에 모일 일이 거의 없는데, 

사이좋게 양념 찹찹발라가며 얘기를 나누는것도 좋았다.


하지만 김장을 또 하라고 하면 역시 사먹는 것이 최고다. 종갓집 짱짱맨 



 



2018년 12월 15일 토요일

개발덕후 남편과 함께 상암 누리꿈스퀘어에서 진행한 [마소콘 2018 - 기술부채 회고] 를 다녀왔다. 

https://www.imaso.co.kr/masocon2018/


기술부채는 진행 할 수 있지만, 일정 또는 기타 사정으로 인해 진행하지 못하는 일종의 빚 같은 개념이다.

이 주제로 세미나와 컨퍼런스를 진행을 해 주셨다.


기술부채를 해결하기 위해서는 팀원들간의 협업, 소스코드 리뷰의 중요성이 이 컨퍼런스의 핵심이라고 생각한다.
실제로 SI업계에서 6년을 일했는데, 저 위의 핵심들은 분명 모든 임직원들이 인지할 것이라고 생각한다.
하지만 갑님이 제시하는 지나치게 힘든 일정과 무리한 일정요구로 인해 할 수 없는 환경이 핵심인 듯 싶다.
실제로 소기업이 할 수 있는 기술부채 탕감 방안을 제안해 주었어도 괜찮았을 것 같다.

컨퍼런스 세션에 대한 기록은 남편이 했으니 링크를 따라가서 보는 것을 추천한다.

남편 블로그는  github jekyll blog 로 구성되어있다. 주로 기술에 대한 내용을 서술한다.

(사실 난 재미없음)

http://jmlim.github.io/%EB%A7%88%EC%86%8C%EC%BD%98/2018/12/17/masocon-2080/






[일하기 싫어 쓰는 잡담 - 두서없음 주의]


결혼생활은 즐겁다. 둘이 코드가 잘 맞아서 싸울 일도 없다.

집안일도 구분없이 서로 잘 한다

(비록 오빠가 설거지를 하고 빨래도 하고 쓰레기도 버리고... 어머 다 하네??ㅠㅠ)

앞으로도 이랬으면 좋겠다.


사회생활은 즐겁지 않다.

그들만의 세상을 벽 뒤에서 보는 느낌이다.

낯을 가리는 것도 있지만, 다가가고자 하는 기회도 주지 않는 느낌이라서 요즘 답답하다.


그래서 무기력했다. 이런 생활이 지속되니 갑자기 무언가를 하고 싶었다.

오프라인에서 소통이 되지 않으니, 온라인에서라도 소통을 하고 싶었던건가.

그래서 인스타를 시작했는데, 워낙 광고계정 팔로우가 많아서 블로그도 동시에 작성중이다.


블로그가 재미있어서 글쓰는 실력을 키워야 할 것 같다.

'생각' 카테고리의 다른 글

이직 6개월 차  (0) 2019.07.31
시작  (0) 2018.12.13


직장을 다닌지 6년이 넘었다.

결혼 전 한번의 이직을 했는데, 본의 아니게 혼밥을 한다.(이런 ㅆ...)

이직을 할 때는 점심 메이트까지 봐야하는 시대가 온것인가 싶다.


나는 점심 혼밥을 좋아하지 않는다. 

군중속의 고독 느낌이 싫다.

그래도 배고프면 먹어야 한다.

점심시간은 직장인의 낙이니까 주로 혼자먹기 편한 곳으로 밥을 먹으러 다닌다.


사무실 지하는 혼밥하기 좋은 환경이 아니기 때문에

주로 11시 50분 ~ 12시 사이에 영등포, 아니면 신도림에서 밥을 먹는다.

나는 주로 가리지 않고 잘 먹지만 점심 피크시간에 혼밥하는건 한정적이라 메뉴가 제한적이다.


아래는 먹으면서 느낀 점이다.

(지극히 개인적인 생각이니 참고만 부탁드립니다)


1. 영등포 홍콩반점 - 짬뽕밥 (보통)


선불이다. 6천원인지 6천5백원인지 헷갈린다. 주문하자마자 5분 안으로 나오는 것 같다.

나는 개인적으로 맑은 느낌의 국물을 좋아하는데, 이곳의 짬뽕국물은 탁하다.

맛은 있다. 간을 세게 해서 먹지 않아서 나한테는 좀 짠 느낌이다.

해장하시는 분들께 추천한다.



2. 신도림 테크노마트 푸트코트 - 돈까스 (비추)


이름이 기억이 안난다. 입구쪽이었던것으로 기억한다. 가격은 7천원선

이 곳은 맛도 맛이지만 기분이 나쁜게, 주문하는데 대놓고 조리하시는 분께

여자니까 밥 조금먹는다고....나 밥 많이 먹는데.....

여튼 주문했으니 받아왔는데, 밥도 딱딱하고 식어있는 밥을 주셨...........

심지어 돈까스도 기름이.....다신안간다 ㅡㅡ 


테크노마트 지하 푸드코트는 점심시간에 가면 직장인들이 많으니, 약간 한산할 때 가는게 좋을 듯 하다.



3. 영등포 라밥 - 라면에 김밥 (추천)


주로 가서 먹는 곳이다. 맛도 괜찮고 가격도 저렴하다. 내가 먹는건 100프로가 라면에 김밥...ㅠㅠ

이곳은 무인결제시스템이 있어서 혼밥러들도 편하게 주문 가능하다.




4. 신도림 미스사이공 - 짬뽕쌀국수, 새우볼 (보통)


사실 여긴 저렴하고 쌀국수가 먹고싶어서 찾은건데, 메뉴 선택에 실패한 것 같다.

짬뽕쌀국수를 먹을 바에는 그냥 쌀국수를 먹는 것을 추천한다.

새우볼은 둘 이상 갈때 사이드로 시키면 딱 맞을 것 같다. 나는 남겼다. 아까워...



5. 신도림 디큐브시티 지하 푸드코트 - 규동 (추천)


생각보다 여유있었다. 일찍 가면 편하게 먹는다. 내 입맛엔 짜다.

맛있기 때문에 할말이 더 없다.

(난 원래 싱겁게 먹는다)



6. 영등포 하노이식당 - 소힘줄쌀국수 (추천)


조용하고 바 형식으로 되어있어서 일찍 가면 혼밥하기 매우 좋다.

이곳도 무인결제 시스템이다.

소힘줄쌀국수는 8천원 선으로 일반 쌀국수집 가격과 비슷하다.

국물이 시원하며 고기국물을 좋아하면 추천한다.



7.신도림 디큐브시티 한국집 - 육회비빔밥 (추천)


점심 혼밥 호화의 끝판왕 육회비빔밥이다.

가격은 13,000원이다. 사실 가격대가 있으나, 혼밥하는 사람도 많고 맛도 괜찮아서 가끔 밥이 땡길때 간다.

돌솥도 먹어봤는데, 다 맛있다.



8. 신도림 디큐브시티 왕푸징 마라탕 (보통)


직접 원하는 재료를 골라서 먹을 수 있는 마라탕이다.

보통 고르면 기본 8천원 정도에 배부르게 먹을 수 있으며, 고기는 따로 추가해야한다.(3천원)

국물의 매운 정도를 선택할 수 있으며, 난 해장때매 1단계로 한 것 같다.

국물 뒤끝에 약간 텁텁하고 신 맛이 나서 나는 그럭저럭 먹을 만 했다.



9. 신도림 디큐브시티 유창반점 - 중화비빔밥 (추천)


대구에서 먹었던 유창반점의 중화비빔밥을 신도림에서 먹을 수 있다기에 먹어보았다.

직접 가서 먹었던 중화비빔밥이 더 맛있긴 한데, 한끼 때우기에는 정말 좋았다.

매운정도를 선택할 수 있으며, 중화비빔밥 주문 시 납작만두도 3개 정도 제공되니 

따로 사이드를 추가할 필요는 없어보인다.



10. 스타벅스 치아바타 & 커피


요즘은 날씨가 추워서 자주 애용하는 방법이다.

스벅에서 샌드위치나 치아바타를 사면 2조각 정도 나오는데, 

한조각은 아침에 먹고 남은 조각은 점심에 먹는다.

비싸기 때문에 애용하지는 않는다.




최근에는 신도림역 출구 김밥 노점상에서 2천원짜리 김밥을 사서 먹었는데 그것도 편해서 좋았다.

이전 회사에서는 구내식당이 있어서 정말 편했는데, 이곳은 구내식당도 없는 것 같고

점심시간에 식사하는 팀원도 없고 해서 점심시간이 오는 것이 별로다. 

대신 휴식에 집중하고 있다.


다음 포스팅은 제발 혼밥 포스팅이 아니었으면 좋겠다.





Java의 Collection은 기본적으로 얕은 복사(shallow copy)는 제공하나 깊은 복사기능은 제공하지 않는다. 즉, 원본 목록과 복제된 목록에 저장된 객체가 동일하고 그렇다는것은 Java 힙 공간에서 동일한 메모리 위치를 가리켜 문제가 될 수 있다.

예를 들면 직원 정보가 들어있는 ArrayList의 생성자를 사용하여 복제시엔 직원 객체 정보는 그대로 있으므로 복제된 list의 객체를 수정시에 같이 영향을 받게 된다.

아래 예제이다.

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class CollectionCloningTest {
    public static void main(String args[]) { 
        List<Employee> org = new ArrayList<>();
        org.add(new Employee("MA", "Manager"));
        org.add(new Employee("AH", "Developer"));
        org.add(new Employee("JM", "Developer"));

        // 생성자를 통해 copy list 생성.
        List<Employee> copy = new ArrayList<>(org);

        System.out.println("ORG LIST : " + org);
        System.out.println("COPY LIST : " + copy);

        Iterator<Employee> itr = org.iterator();
        while (itr.hasNext()) {
            itr.next().setDesignation("Specialist");
        }

        //org list 에 해당하는 값을 바꿨으나 copy list 에 들어있는 객체값도 같이 바뀌게 된다.
        System.out.println("ORG LIST : " + org);
        System.out.println("COPY LIST : " + copy);
    }
}

class Employee {
    private String name;
    private String designation;

    public Employee(String name, String designation) {
        this.name = name;
        this.designation = designation;
    }

    public String getDesignation() {
        return designation;
    }

    public void setDesignation(String designation) {
        this.designation = designation;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return String.format("%s: %s", name, designation);
    }
}
  • 출력값 : org list 에 해당하는 값을 바꿨으나 copy list 에 들어있는 객체값도 같이 바뀌게 된다.

    ORG LIST : [MA: Manager, AH: Developer, JM: Developer]
    COPY LIST : [MA: Manager, AH: Developer, JM: Developer]
    ORG LIST : [MA: Specialist, AH: Specialist, JM: Specialist]
    COPY LIST : [MA: Specialist, AH: Specialist, JM: Specialist]

복제본이 단순 복사이고 힙의 동일한 Employee 개체를 가리 키기 때문에 원본 컬렉션의 Employee 개체 ( “Specialist”로 변경된 지정)가 복제 된 컬렉션에도 반영되어 있음을 확인할 수 있다. 
이 문제를 해결하려면 Collection을 반복할 시 Employee 객체를 깊게 복제해야하며 그 전에 Employee 객체의 복제 메소드를 재정의해서 넣어야한다.

해결방법

1) 객체 복사를 할 수 있도록 하는 인터페이스 구현 (Employee가 Cloneable 인터페이스를 구현하도록 한다.) 2) Employee 클래스에 clone() 메소드 추가

/** 1. 기존 Employee 클래스에 Cloneable을 구현하도록 추가. 2. clone 메소드 구현. */

class Employee implements Cloneable {
    private String name;
    private String designation;

    public Employee(String name, String designation) {
        this.name = name;
        this.designation = designation;
    }

    public String getDesignation() {
        return designation;
    }

    public void setDesignation(String designation) {
        this.designation = designation;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return String.format("%s: %s", name, designation);
    }

    @Override
    public Employee clone() {
        Employee clone = null;
        try {
            clone = (Employee) super.clone();
        } catch (CloneNotSupportedException e) {
            throw new RuntimeException(e);
        }
        return clone;
    }
}

생성자를 사용하여 List를 복사하는 대신 다음 코드를 사용하여 Java에서 콜렉션 전체 복사

public class CollectionCloningTest {
    public static void main(String args[]) { // deep cloning Collection in Java
		....위와 같은 로직...
			
		//deep copy 로직
		List<Employee> deepCopy = new ArrayList<>(org.size());
		Iterator<Employee> iterator = org.iterator();
		while (iterator.hasNext()) {
			deepCopy.add(iterator.next().clone());
		}

		//deepCopy list 에 해당하는 값을 바꿨으나 org list 에 있는 객체값이 영향을 받지 않는다..
		deepCopy.get(0).setDesignation("Expert");

		System.out.println("ORG LIST : " + org);
		System.out.println("DEEP COPY LIST : " + deepCopy);
	}
}

참고자료



[출처]

http://jmlim.github.io/java/2018/12/13/java-deep-copy/


+ Recent posts