book-effective-java ์ฐธ๊ณ ๋งํฌ ์คํฐ๋ ์ด์๋ฐฉ์ ์ฑ ์ ๋ณด ๋งํฌ ์ดํํฐ๋ธ์๋ฐ ๊ณต์ Github ์ดํํฐ๋ธ์๋ฐ 3ํ ๋ฒ์ญ ์ฉ์ด ์ค๋ช 2์ฅ. ๊ฐ์ฒด ์์ฑ๊ณผ ํ๊ดด ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 1. ์์ฑ์ ๋์ ์ ์ ํฉํฐ๋ฆฌ ๋ฉ์๋๋ฅผ ๊ณ ๋ คํ๋ผ ๊น๋ฏผ๊ฑธ / ์ต๋ฝ์ค / ๊น์ฌ์ค ์์ดํ 2. ์์ฑ์์ ๋งค๊ฐ๋ณ์๊ฐ ๋ง๋ค๋ฉด ๋น๋๋ฅผ ๊ณ ๋ คํ๋ผ ์ ํจ์ / ๋ฐ์ฐฝ์ / ์กฐ์์ง ์์ดํ 3. private ์์ฑ์๋ ์ด๊ฑฐ ํ์ ์ผ๋ก ์ฑ๊ธํด์์ ๋ณด์ฆํ๋ผ ๊น๋ณด๋ฐฐ / ์ ํจ์ ์์ดํ 4. ์ธ์คํด์คํ๋ฅผ ๋ง์ผ๋ ค๊ฑฐ๋ private ์์ฑ์๋ฅผ ์ฌ์ฉํ๋ผ ์ดํธ๋น / ๋ฐ์ง์ / ๊น๊ดํ ์์ดํ 5. ์์์ ์ง์ ๋ช ์ํ์ง ๋ง๊ณ ์์กด ๊ฐ์ฒด ์ฃผ์ ์ ์ฌ์ฉํ๋ผ ํฉ์คํธ / ๊น์ง์ / ์์ก์ด ์์ดํ 6. ๋ถํ์ํ ๊ฐ์ฒด ์์ฑ์ ํผํ๋ผ ์ ์ ์ / ๋ฐ๊ฒฝ์ฒ / ๊ฐํ๊ท ์์ดํ 7. ๋ค ์ด ๊ฐ์ฒด ์ฐธ์กฐ๋ฅผ ํด์ ํ๋ผ ๊น์ธ์ค / ์ด์ฃผํ / ๊น์๋ ์์ดํ 8. finalizer์ cleaner ์ฌ์ฉ์ ํผํ๋ผ ์ ์ ์ / ๊น์ง์ / ๊นํ์ค ์์ดํ 9. try-finally๋ณด๋ค๋ try-with-resources๋ฅผ ์ฌ์ฉํ๋ผ ํฉ์คํธ / ๊น๋ณด๋ฐฐ / 3์ฅ. ๋ชจ๋ ๊ฐ์ฒด์ ๊ณตํต ๋ฉ์๋ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 10. equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ ๊น์ธ์ค / ์ต๋ฝ์ค ์์ดํ 11. equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashCode๋ ์ฌ์ ์ํ๋ผ ๋ฐ๊ฒฝ์ฒ ์์ดํ 12. toString์ ํญ์ ์ฌ์ ์ํ๋ผ ์ดํธ๋น ์์ดํ 13. clone ์ฌ์ ์๋ ์ฃผ์ํด์ ์งํํ๋ผ ๊น๋ฏผ๊ฑธ / ๋ฐ์ฐฝ์ ์์ดํ 14. Comparable์ ๊ตฌํํ ์ง ๊ณ ๋ คํ๋ผ ๊น์ธ์ค / ์ด์ฃผํ 4์ฅ. ํด๋์ค์ ์ธํฐํ์ด์ค ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 15. ํด๋์ค์ ๋ฉค๋ฒ์ ์ ๊ทผ ๊ถํ์ ์ต์ํํ๋ผ ํฉ์คํธ / ์ด์ฃผํ ์์ดํ 16. public ํด๋์ค์์๋ public ํ๋๊ฐ ์๋ ์ ๊ทผ์ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ผ ์๊ธฐ์ด / ๋ฐ์์ง ์์ดํ 17. ๋ณ๊ฒฝ ๊ฐ๋ฅ์ฑ์ ์ต์ํํ๋ผ ๊น๋ฏผ๊ฑธ / ์ต๋ฝ์ค ์์ดํ 18. ์์๋ณด๋ค๋ ์ปดํฌ์ง์ ์ ์ฌ์ฉํ๋ผ ์ดํธ๋น / ๊น๋ณด๋ฐฐ ์์ดํ 19. ์์์ ๊ณ ๋ คํด ์ค๊ณํ๊ณ ๋ฌธ์ํํ๋ผ. ๊ทธ๋ฌ์ง ์์๋ค๋ฉด ์์์ ๊ธ์งํ๋ผ. ์ ํจ์ / ๊น์ง์ ์์ดํ 20. ์ถ์ ํด๋์ค๋ณด๋ค๋ ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ ์ ์ ์ / ๋ฐ๊ฒฝ์ฒ ์์ดํ 21. ์ธํฐํ์ด์ค๋ ๊ตฌํํ๋ ์ชฝ์ ์๊ฐํด ์ค๊ณํ๋ผ ์ ์ ์ / ๋ฐ์ฐฝ์ ์์ดํ 22. ์ธํฐํ์ด์ค๋ ํ์ ์ ์ ์ํ๋ ์ฉ๋๋ก๋ง ์ฌ์ฉํ๋ผ ํฉ์คํธ / ์ด์ฃผํ ์์ดํ 23. ํ๊ทธ ๋ฌ๋ฆฐ ํด๋์ค๋ณด๋ค๋ ํด๋์ค ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ํ์ฉํ๋ผ ๊น์ธ์ค / ๊น๋ณด๋ฐฐ ์์ดํ 24. ๋ฉค๋ฒ ํด๋์ค๋ ๋๋๋ก static์ผ๋ก ๋ง๋ค๋ผ ๊น์ง์ / ๊น์ง์ ์์ดํ 25. ํฑ๋ ๋ฒจ ํด๋์ค๋ ํ ํ์ผ์ ํ๋๋ง ๋ด์ผ๋ผ ์ ํจ์ / ์ต๋ฝ์ค 5์ฅ. ์ ๋ค๋ฆญ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 26. ๋ก ํ์ ์ ์ฌ์ฉํ์ง ๋ง๋ผ ์๊ธฐ์ด / ๋ฐ์ฐฝ์ ์์ดํ 27. ๋น๊ฒ์ฌ ๊ฒฝ๊ณ ๋ฅผ ์ ๊ฑฐํ๋ผ ์ดํธ๋น / ๋ฐ๊ฒฝ์ฒ ์์ดํ 28. ๋ฐฐ์ด๋ณด๋ค๋ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ๋ผ ์ดํธ๋น ์์ดํ 29. ์ด์์ด๋ฉด ์ ๋ค๋ฆญ ํ์ ์ผ๋ก ๋ง๋ค๋ผ ๊น๋ฏผ๊ฑธ / ๊น๋ณด๋ฐฐ ์์ดํ 30. ์ด์์ด๋ฉด ์ ๋ค๋ฆญ ๋ฉ์๋๋ก ๋ง๋ค๋ผ ๊น์ธ์ค / ์ด์ฃผํ ์์ดํ 31. ํ์ ์ ์์ผ๋์นด๋๋ฅผ ์ฌ์ฉํด API ์ ์ฐ์ฑ์ ๋์ด๋ผ ๊น์ธ์ค / ๋ฐ๊ฒฝ์ฒ ์์ดํ 32. ์ ๋ค๋ฆญ๊ณผ ๊ฐ๋ณ์ธ์๋ฅผ ํจ๊ป ์ธ ๋๋ ์ ์คํ๋ผ ์ ํจ์ / ๊น์ง์ ์์ดํ 33. ํ์ ์์ ์ด์ข ์ปจํ ์ด๋๋ฅผ ๊ณ ๋ คํ๋ผ ์ ์ ์ / ์ต๋ฝ์ค 6์ฅ. ์ด๊ฑฐ ํ์ ๊ณผ ์ ๋ํ ์ด์ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 34. int ์์ ๋์ ์ด๊ฑฐ ํ์ ์ ์ฌ์ฉํ๋ผ ํฉ์คํธ / ๋ฐ์ฐฝ์ ์์ดํ 35. ordinal ๋ฉ์๋ ๋์ ์ธ์คํด์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ผ ๊น์ธ์ค / ์ต๋ฝ์ค ์์ดํ 36. ๋นํธ ํ๋ ๋์ EnumSet์ ์ฌ์ฉํ๋ผ ์ดํธ๋น / ๋ฐ๊ฒฝ์ฒ ์์ดํ 37. ordinal ์ธ๋ฑ์ฑ ๋์ EnumMap์ ์ฌ์ฉํ๋ผ ์ ์ ์ / ์ด์ฃผํ ์์ดํ 38. ํ์ฅํ ์ ์๋ ์ด๊ฑฐ ํ์ ์ด ํ์ํ๋ฉด ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ๊น์ง์ ์์ดํ 39. ๋ช ๋ช ํจํด๋ณด๋ค ์ ๋ํ ์ด์ ์ ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ์ต๋ฝ์ค ์์ดํ 40. @Override ์ ๋ํ ์ด์ ์ ์ผ๊ด๋๊ฒ ์ฌ์ฉํ๋ผ ์ ์ ์ / ๊น๋ณด๋ฐฐ ์์ดํ 41. ์ ์ํ๋ ค๋ ๊ฒ์ด ํ์ ์ด๋ผ๋ฉด ๋ง์ปค ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ๋ฐ์ฐฝ์ 7์ฅ. ๋๋ค์ ์คํธ๋ฆผ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 42. ์ต๋ช ํด๋์ค๋ณด๋ค๋ ๋๋ค๋ฅผ ์ฌ์ฉํ๋ผ ๊น์ฌ์ค / ๊น๋ณด๋ฐฐ ์์ดํ 43. ๋๋ค๋ณด๋ค๋ ๋ฉ์๋ ์ฐธ์กฐ๋ฅผ ์ฌ์ฉํ๋ผ ํฉ์คํธ / ๋ฐ์ฐฝ์ ์์ดํ 44. ํ์ค ํจ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ ์ดํธ๋น / ๊น์ง์ ์์ดํ 45. ์คํธ๋ฆผ์ ์ฃผ์ํด์ ์ฌ์ฉํ๋ผ ๊น์ธ์ค / ๋ฐ์์ ์์ดํ 46. ์คํธ๋ฆผ์์๋ ๋ถ์์ฉ ์๋ ํจ์๋ฅผ ์ฌ์ฉํ๋ผ ๊น์ฌ์ค / ์ด์ฃผํ ์์ดํ 47. ๋ฐํ ํ์ ์ผ๋ก๋ ์คํธ๋ฆผ๋ณด๋ค ์ปฌ๋ ์ ์ด ๋ซ๋ค ์ ์ ์ / ๋ฐ๊ฒฝ์ฒ ์์ดํ 48. ์คํธ๋ฆผ ๋ณ๋ ฌํ๋ ์ฃผ์ํด์ ์ ์ฉํ๋ผ ๊น์ธ์ค / ์ด์ฃผํ 8์ฅ. ๋ฉ์๋ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 49. ๋งค๊ฐ๋ณ์๊ฐ ์ ํจํ์ง ๊ฒ์ฌํ๋ผ ์ ํจ์ / ๋ฐ๊ฒฝ์ฒ ์์ดํ 50. ์ ์์ ๋ฐฉ์ด์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค๋ผ ๊น๋ฏผ๊ฑธ / ๋ฐ์์ ์์ดํ 51. ๋ฉ์๋ ์๊ทธ๋์ฒ๋ฅผ ์ ์คํ ์ค๊ณํ๋ผ ์ดํธ๋น / ๊น๋ณด๋ฐฐ ์์ดํ 52. ๋ค์ค์ ์๋ ์ ์คํ ์ฌ์ฉํ๋ผ ํฉ์คํธ / ๋ฐ์ฐฝ์ ์์ดํ 53. ๊ฐ๋ณ์ธ์๋ ์ ์คํ ์ฌ์ฉํ๋ผ ๊น์ธ์ค / ์ต๋ฝ์ค ์์ดํ 54. null์ด ์๋, ๋น ์ปฌ๋ ์ ์ด๋ ๋ฐฐ์ด์ ๋ฐํํ๋ผ ๊น์ธ์ค / ์ต๋ฝ์ค ์์ดํ 55. ์ต์ ๋ ๋ฐํ์ ์ ์คํ ํ๋ผ ๊น์ฌ์ค / ๊น์ง์ ์์ดํ 56. ๊ณต๊ฐ๋ API ์์์๋ ํญ์ ๋ฌธ์ํ ์ฃผ์์ ์์ฑํ๋ผ ํฉ์คํธ / ๊น์ง์ 9์ฅ. ์ผ๋ฐ์ ์ธ ํ๋ก๊ทธ๋๋ฐ ์์น ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 57. ์ง์ญ๋ณ์์ ๋ฒ์๋ฅผ ์ต์ํํ๋ผ ์ ์ ์ / ๋ฐ๊ฒฝ์ฒ ์์ดํ 58. ์ ํต์ ์ธ for ๋ฌธ๋ณด๋ค๋ for-each ๋ฌธ์ ์ฌ์ฉํ๋ผ ์ดํธ๋น / ์ด์ฃผํ ์์ดํ 59. ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ตํ๊ณ ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ๊น๋ณด๋ฐฐ ์์ดํ 60. ์ ํํ ๋ต์ด ํ์ํ๋ค๋ฉด float์ double์ ํผํ๋ผ ์ ํจ์ / ์ต๋ฝ์ค ์์ดํ 61. ๋ฐ์ฑ๋ ๊ธฐ๋ณธ ํ์ ๋ณด๋ค๋ ๊ธฐ๋ณธ ํ์ ์ ์ฌ์ฉํ๋ผ ๊น์ธ์ค / ๋ฐ์ฐฝ์ ์์ดํ 62. ๋ค๋ฅธ ํ์ ์ด ์ ์ ํ๋ค๋ฉด ๋ฌธ์์ด ์ฌ์ฉ์ ํผํ๋ผ ํฉ์คํธ / ๋ฐ์์ ์์ดํ 63. ๋ฌธ์์ด ์ฐ๊ฒฐ์ ๋๋ฆฌ๋ ์ฃผ์ํ๋ผ ๊น์ธ์ค / ๋ฐ๊ฒฝ์ฒ ์์ดํ 64. ๊ฐ์ฒด๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํด ์ฐธ์กฐํ๋ผ ๊น์ฌ์ค / ๋ฐ์์ ์์ดํ 65. ๋ฆฌํ๋ ์ ๋ณด๋ค๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ๊น๋ณด๋ฐฐ ์์ดํ 66. ๋ค์ดํฐ๋ธ ๋ฉ์๋๋ ์ ์คํ ์ฌ์ฉํ๋ผ ์ ํจ์ / ๊น์ง์ ์์ดํ 67. ์ต์ ํ๋ ์ ์คํ ํ๋ผ ์ดํธ๋น / ๋ฐ์ฐฝ์ ์์ดํ 68. ์ผ๋ฐ์ ์ผ๋ก ํต์ฉ๋๋ ๋ช ๋ช ๊ท์น์ ๋ฐ๋ฅด๋ผ ์ ์ ์ / ์ด์ฃผํ 10์ฅ. ์์ธ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 69. ์์ธ๋ ์ง์ง ์์ธ ์ํฉ์๋ง ์ฌ์ฉํ๋ผ ๊น๋ฏผ๊ฑธ / ์ต๋ฝ์ค ์์ดํ 70. ๋ณต๊ตฌํ ์ ์๋ ์ํฉ์๋ ๊ฒ์ฌ ์์ธ๋ฅผ, ํ๋ก๊ทธ๋๋ฐ ์ค๋ฅ์๋ ๋ฐํ์ ์์ธ๋ฅผ ์ฌ์ฉํ๋ผ ์ ์ ์ / ์ด์ฃผํ ์์ดํ 71. ํ์ ์๋ ๊ฒ์ฌ ์์ธ ์ฌ์ฉ์ ํผํ๋ผ ์ดํธ๋น / ๊น๋ณด๋ฐฐ ์์ดํ 72. ํ์ค ์์ธ๋ฅผ ์ฌ์ฉํ๋ผ ๊น์ฌ์ค / ๋ฐ๊ฒฝ์ฒ ์์ดํ 73. ์ถ์ํ ์์ค์ ๋ง๋ ์์ธ๋ฅผ ๋์ง๋ผ ํฉ์คํธ / ๋ฐ์์ ์์ดํ 74. ๋ฉ์๋๊ฐ ๋์ง๋ ๋ชจ๋ ์์ธ๋ฅผ ๋ฌธ์ํํ๋ผ ๊น์ฌ์ค / ๋ฐ์ฐฝ์ ์์ดํ 75. ์์ธ์ ์์ธ ๋ฉ์์ง์ ์คํจ ๊ด๋ จ ์ ๋ณด๋ฅผ ๋ด์ผ๋ผ ์ ํจ์ / ์ต๋ฝ์ค ์์ดํ 76. ๊ฐ๋ฅํ ํ ์คํจ ์์์ ์ผ๋ก ๋ง๋ค๋ผ ๊น์ธ์ค / ๊น์ง์ ์์ดํ 77. ์์ธ๋ฅผ ๋ฌด์ํ์ง ๋ง๋ผ ๊น๋ฏผ๊ฑธ / ์ต๋ฝ์ค 11์ฅ. ๋์์ฑ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 78. ๊ณต์ ์ค์ธ ๊ฐ๋ณ ๋ฐ์ดํฐ๋ ๋๊ธฐํํด ์ฌ์ฉํ๋ผ ์ดํธ๋น / ๊น๋ณด๋ฐฐ ์์ดํ 79. ๊ณผ๋ํ ๋๊ธฐํ๋ ํผํ๋ผ ๊น์ธ์ค / ๋ฐ์์ ์์ดํ 80. ์ค๋ ๋๋ณด๋ค๋ ์คํ์, ํ์คํฌ, ์คํธ๋ฆผ์ ์ ์ฉํ๋ผ ๋ฐ์ฐฝ์ ์์ดํ 81. wait์ notify๋ณด๋ค๋ ๋์์ฑ ์ ํธ๋ฆฌํฐ๋ฅผ ์ ์ฉํ๋ผ ์ ์ ์ / ๋ฐ๊ฒฝ์ฒ ์์ดํ 82. ์ค๋ ๋ ์์ ์ฑ ์์ค์ ๋ฌธ์ํํ๋ผ ํฉ์คํธ / ์ด์ฃผํ ์์ดํ 83. ์ง์ฐ ์ด๊ธฐํ๋ ์ ์คํ ์ฌ์ฉํ๋ผ ๊น์ฌ์ค / ๊น์ง์ ์์ดํ 84. ํ๋ก๊ทธ๋จ์ ๋์์ ์ค๋ ๋ ์ค์ผ์ค๋ฌ์ ๊ธฐ๋์ง ๋ง๋ผ ์ ์ ์ / ์ด์ฃผํ 12์ฅ. ์ง๋ ฌํ ์์ดํ ๋ฐํ์๋ฃ ์์ดํ 85. ์๋ฐ ์ง๋ ฌํ์ ๋์์ ์ฐพ์ผ๋ผ ์ดํธ๋น / ๊น์ง์ ์์ดํ 86. Serializable์ ๊ตฌํํ ์ง๋ ์ ์คํ ๊ฒฐ์ ํ๋ผ ๊น์ฌ์ค / ๋ฐ๊ฒฝ์ฒ ์์ดํ 87. ์ปค์คํ ์ง๋ ฌํ ํํ๋ฅผ ๊ณ ๋ คํด๋ณด๋ผ ๋ฐ์์ ์์ดํ 88. readObject ๋ฉ์๋๋ ๋ฐฉ์ด์ ์ผ๋ก ์์ฑํ๋ผ ๊น๋ฏผ๊ฑธ ์์ดํ 89. ์ธ์คํด์ค ์๋ฅผ ํต์ ํด์ผ ํ๋ค๋ฉด readResolve๋ณด๋ค๋ ์ด๊ฑฐ ํ์ ์ ์ฌ์ฉํ๋ผ ์ ํจ์ / ๋ฐ์ฐฝ์ ์์ดํ 90. ์ง๋ ฌํ๋ ์ธ์คํด์ค ๋์ ์ง๋ ฌํ ํ๋ก์ ์ฌ์ฉ์ ๊ฒํ ํ๋ผ ๊น๋ณด๋ฐฐ / ํฉ์คํธ