JVMºÎÅÍ ¼º´É, µ¿½Ã¼º, ÄÁÅ×À̳ÊÈ µî °í±Þ ±â¼ú±îÁöÀÚ¹Ù´Â ¿£ÅÍÇÁ¶óÀÌÁî ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î¸µÀÇ ÇÙ½ÉÀÌ´Ù. ÈǸ¢ÇÑ ÀÚ¹Ù °³¹ßÀÚ°¡ µÇ±â À§Çؼ± ±âº»±â¸¦ °®Ãç¾ß ÇÑ´Ù. ÀÌ Ã¥Àº ÀÚ¹Ù 8 ÀÌÈÄ ÀÚ¹Ù »ýÅ°è¿Í ¸±¸®½º ÁֱⰡ ¾î¶»°Ô º¯ÈÇß´ÂÁö »ìÆ캸¸ç, ƯÈ÷ ÀÚ¹Ù 11 ¹× 17¿¡ Ãß°¡µÈ »õ·Î¿î ±â´ÉÀ» ¼³¸íÇÑ´Ù. ÀÚ¹Ù ¸ðµâ ¹× µ¿½Ã¼º ¸ðµ¨, Ŭ·¡½º ·Îµù°ú °°Àº °·ÂÇÑ ±â´ÉºÎÅÍ ¼º´É ÃÖÀûÈ¿Í ¹ÙÀÌÆ®Äڵ带 À§ÇÑ °í±Þ ±â¼ú ±×¸®°í Å×½ºÆ® Á᫐ °³¹ß°ú ÄÁÅ×ÀÌ³Ê ±â¹Ý ¹èÆ÷¿Í °°Àº Çʼö ÃֽŠ±â¼ú±îÁö ¾Ë¾Æº»´Ù. ÄÚƲ¸° ¹× Ŭ·ÎÀú µî ´Ù¸¥ JVM ¾ð¾î±îÁö ´Ù·ï ÀÚ¹Ù ±â¼úÀ» ÇÑÃþ ´õ ¾÷±×·¹À̵åÇÏ°í źźÇÑ ±â¹ÝÀ» ´ÙÁú ¼ö ÀÖµµ·Ï µµ¿ÍÁØ´Ù.
·¹µåÇÞÀÇ Àڹ٠èÇǾðÀÌÀÚ ¼ö¼® ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î´Ù. ´º·¼¸¯, µµÀÌü ¹æÅ©¿¡¼ ¼ö¼® ¾ÆÅ°ÅØÆ®¿´À¸¸ç, ¸ð°Ç ½ºÅĸ®¿¡¼ ¼ö¼® ±â¼ú °»ç·Î ±Ù¹«Çß´Ù. jClarity¸¦ °øµ¿ ⸳Çß°í, ÀÚ¹Ù Ä¿¹Â´ÏƼ ÇÁ·Î¼¼½º ÁýÇàÀ§¿øȸ¿¡¼ »õ·Î¿î Àڹ٠ǥÁØÀ» Á¤ÀÇÇÏ´Â µ¥ µµ¿òÀ» Áá´Ù. Àú¼·Î ¡ºÀÚ¹Ù ÃÖÀûÈ¡»(ÇѺû¹Ìµð¾î, 2019)¿Í ¡ºJava in a Nutshell¡»(O¡¯Reilly, 2014) µîÀÌ ÀÖ´Ù. Àü ¼¼°è ±â¾÷ ¹× ÄÜÆÛ·±½º¿¡¼ ÀÚ¹Ù Ç÷§Æû, ½Ã½ºÅÛ ¾ÆÅ°ÅØó, ¼º´É ¹× µ¿½Ã¼º µîÀÇ ÁÖÁ¦·Î Á¤±âÀûÀ¸·Î ¿¬¼³ ¹× ±³À°ÇÏ°í ÀÖ´Ù.
ÁöÀºÀÌ¡¤¿Å±äÀÌ ¼Ò°³ xv¿Å±äÀÌ ¸Ó¸®¸» xviiº£Å¸¸®´õ Èıâ xviiiÃßõ ¼¹®(ÇÏÀÎÃ÷ Ä«ºÎÃ÷) xx½ÃÀÛÇϸç xxii°¨»çÀÇ ±Û xxvÀÌ Ã¥¿¡ ´ëÇÏ¿© xxviiiÇ¥Áö¿¡ ´ëÇÏ¿© xxxiiPART I ¹öÀü 8¿¡¼ 11 ±×¸®°í ±× ÀÌÈÄ 1CHAPTER 1 ¸ð´ø ÀÚ¹Ù ¼Ò°³ 31.1 ¾ð¾î¿Í Ç÷§Æû 41.2 »õ·Î¿î ÀÚ¹Ù ¸±¸®½º ¸ðµ¨ 61.3 Çâ»óµÈ ŸÀÔ Ãß·Ð(var Å°¿öµå) 101.4 ¾ð¾î ¹× Ç÷§Æû º¯°æ 151.5 ÀÚ¹Ù 11¿¡¼ÀÇ ÀÛÀº º¯°æ »çÇ× 20¢º ¿ä¾à 30CHAPTER 2 ÀÚ¹Ù ¸ðµâ 312.1 ¹è°æ ¼³¸í 322.2 ±âº»ÀûÀÎ ¸ðµâ ±¸¹® 412.3 ¸ðµâ ·ÎµåÇϱâ 452.4 ù ¸ðµâÇü ¾Û ºôµåÇϱâ 482.5 ¸ðµâÀ» À§ÇÑ ¾ÆÅ°ÅØó 552.6 ¸ðµâÀ» ³Ñ¾î¼ 64¢º ¿ä¾à 66CHAPTER 3 ÀÚ¹Ù 17 673.1 Text ºí·Ï 673.2 switch Ç¥Çö½Ä 693.3 record 733.4 sealed ŸÀÔ 853.5 instanceofÀÇ »õ·Î¿î Çü½Ä 913.6 ÆÐÅÏ ¸ÅĪ°ú ÇÁ¸®ºä ±â´É 92¢º ¿ä¾à 96PART II ÇÑ ¹ß ´õ µé¾î°¡±â 97CHAPTER 4 Ŭ·¡½º ÆÄÀÏ°ú ¹ÙÀÌÆ®ÄÚµå 994.1 Ŭ·¡½º ·Îµù°ú Ŭ·¡½º °´Ã¼ 1004.2 Ŭ·¡½º·Î´õ 1054.3 Ŭ·¡½º ÆÄÀÏ »ìÆ캸±â 1174.4 ¹ÙÀÌÆ®ÄÚµå 1234.5 ¸®Ç÷º¼Ç 138¢º ¿ä¾à 144CHAPTER 5 ÀÚ¹Ù µ¿½Ã¼º ±âÃÊ 1455.1 µ¿½Ã¼º ÀÌ·Ð ÀÔ¹® 1465.2 µðÀÚÀÎ ÄܼÁÆ® 1515.3 ºí·Ï ±¸Á¶ µ¿½Ã¼º(ÀÚ¹Ù 5 ÀÌÀü) 1565.4 ÀÚ¹Ù ¸Þ¸ð¸® ¸ðµ¨ 1795.5 ¹ÙÀÌÆ®ÄÚµå·Î µ¿½Ã¼º ÀÌÇØÇϱâ 182¢º ¿ä¾à 205CHAPTER 6 JDK µ¿½Ã¼º ¶óÀ̺귯¸® 2066.1 ÃֽŠµ¿½Ã ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ ºôµù ºí·Ï 2066.2 ¾ÆÅä¹Í Ŭ·¡½º 2076.3 Àá±Ý Ŭ·¡½º 2096.4 CountDownLatch 2126.5 ConcurrentHashMap 2146.6 CopyOnWriteArrayList 2256.7 ºí·ÎÅ· Å¥ 2296.8 ǻó 2396.9 ÀÛ¾÷°ú ½ÇÇà 243¢º ¿ä¾à 251CHAPTER 7 ÀÚ¹Ù ¼º´É ÀÌÇØÇϱâ 2527.1 ¸î °¡Áö ¼º´É ¿ë¾îÀÇ ±âº» Á¤ÀÇ 2557.2 ¼º´É ºÐ¼®¿¡ ´ëÇÑ ½Ç¿ëÀûÀÎ Á¢±Ù ¹æ½Ä 2587.3 ¹«¾ùÀÌ ¹®Á¦ÀÎÁö ¿Ö ½Å°æ ½á¾ß Çϴ°¡? 2657.4 ÀÚ¹Ù ¼º´É Æ©´×Àº ¿Ö ¾î·Á¿î°¡? 2697.5 °¡ºñÁö Ä÷º¼Ç 2747.6 ÇÖ½ºÆý¿¡¼ÀÇ JIT ÄÄÆÄÀÏ 2847.7 JDK Flight Recorder 291¢º ¿ä¾à 298PART III JVM¿¡¼ ÀÚ¹Ù ¿ÜÀÇ ¾ð¾î 299CHAPTER 8 ´Ù¸¥ JVM ¾ð¾î 3018.1 ¾ð¾î ºÐ·ùÇÐ 3028.2 JVM¿¡¼ÀÇ ´ÙÁß ¾ð¾î ÇÁ·Î±×·¡¹Ö 3078.3 ÇÁ·ÎÁ§Æ®¿¡ ºñÀÚ¹Ù ¾ð¾î¸¦ ¼±ÅÃÇÏ´Â ¹æ¹ý 3148.4 JVMÀÌ ´Ù¸¥ ¾ð¾î¸¦ Áö¿øÇÏ´Â ¹æ¹ý 318¢º ¿ä¾à 322CHAPTER 9 ÄÚƲ¸° 3239.1 ÄÚƲ¸°À» »ç¿ëÇÏ´Â ÀÌÀ¯ 3249.2 ÆíÀǼº°ú °£°á¼º 3259.3 Ŭ·¡½º¿Í °´Ã¼¿¡ ´ëÇÑ ´Ù¸¥ ½Ã°¢ 3379.4 ¾ÈÀü¼º 3459.5 µ¿½Ã¼º 3499.6 ÀÚ¹Ù¿ÍÀÇ »óÈ£ ¿î¿ë¼º 353¢º ¿ä¾à 358CHAPTER 10 Ŭ·ÎÀú: ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ ´Ù¸¥ °üÁ¡ 35910.1 Ŭ·ÎÀú ¼Ò°³ 36010.2 Ŭ·ÎÀú ã¾Æº¸±â: ±¸¹® ¹× Àǹ̷Р37010.3 ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö°ú closure 38810.4 Ŭ·ÎÀú ½ÃÄö½º ¼Ò°³ 39010.5 Ŭ·ÎÀú¿Í ÀÚ¹Ù °£ÀÇ »óÈ£ ¿î¿ë¼º 39710.6 ¸ÅÅ©·Î 403¢º ¿ä¾à 410PART IV ºôµå¿Í µðÇ÷ÎÀ̸ÕÆ® 411CHAPTER 11 ±×·¡µé°ú ¸ÞÀ̺ìÀ» »ç¿ëÇÑ ºôµå 41311.1 ±âº»±â°¡ źźÇÑ °³¹ßÀÚ¿¡°Ô ºôµå µµ±¸°¡ ¿Ö Áß¿äÇÑ°¡ 41311.2 ¸ÞÀ̺ì 41911.3 ±×·¡µé 450¢º ¿ä¾à 481CHAPTER 12 ÄÁÅ×À̳ʿ¡¼ ÀÚ¹Ù ½ÇÇàÇϱâ 48212.1 ±âº»±â°¡ Æ°Æ°ÇÑ °³¹ßÀÚ¿¡°Ô ÄÁÅ×À̳ʰ¡ Áß¿äÇÑ ÀÌÀ¯ 48312.2 µµÄ¿ ±âº» 48712.3 µµÄ¿·Î ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÇϱâ 49412.4 Äí¹ö³×Ƽ½º 51012.5 °üÃø °¡´É¼º°ú ¼º´É 519¢º ¿ä¾à 524CHAPTER 13 Å×½ºÆ® ±âº» 52513.1 Å×½ºÆ®ÇÏ´Â ÀÌÀ¯ 52613.2 Å×½ºÆ® ¹æ¹ý 52613.3 Å×½ºÆ® ÁÖµµ °³¹ß 53013.4 Å×½ºÆ® ´õºí 53913.5 Junit 4¿¡¼ 5·Î 552¢º ¿ä¾à 559CHAPTER 14 JunitÀ» ³Ñ¾î¼± Å×½ºÆ® 56014.1 Å×½ºÆ®ÄÁÅ×À̳ʸ¦ ÀÌ¿ëÇÑ ÅëÇÕ Å×½ºÆ® 56014.2 Spek°ú ÄÚƲ¸°À» »ç¿ëÇÑ ¸í¼¼ ½ºÅ¸ÀÏ Å×½ºÆà 57214.3 Ŭ·ÎÀú¸¦ »ç¿ëÇÑ ¼Ó¼º ±â¹Ý Å×½ºÆ® 579¢º ¿ä¾à 594PART V ÀÚ¹ÙÀÇ »õ ¿µ¿ª 595CHAPTER 15 °í±Þ ÇÔ¼ö ÇÁ·Î±×·¡¹Ö 59715.1 ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö °³³ä ¼Ò°³ 59815.2 ÀÚ¹ÙÀÇ ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î¼ÀÇ ÇÑ°è 60315.3 ÄÚƲ¸° ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö 61915.4 Ŭ·ÎÀú ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö 637¢º ¿ä¾à 644CHAPTER 16 °í±Þ µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö 64516.1 Fork/Join ÇÁ·¹ÀÓ¿öÅ© 64616.2 µ¿½Ã¼º°ú ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö 65316.3 ÄÚƲ¸° ÄÚ·çƾÀÇ ³»¸é µé¿©´Ùº¸±â 66016.4 Ŭ·ÎÀú µ¿½Ã¼º 669¢º ¿ä¾à 685CHAPTER 17 ÃֽŠ³»ºÎ ±¸Á¶ 68617.1 JVM ³»ºÎ ±¸Á¶ ¼Ò°³: ¸Þ¼µå È£Ãâ 68717.2 ¸®Ç÷º¼Ç ³»ºÎ 69417.3 ¸Þ¼µå ÇÚµé 70017.4 Invokedynamic 70717.5 ³»ºÎÀÇ ÀÛÀº º¯Èµé 71317.6 Unsafe 72117.7 Áö¿øµÇ´Â API·Î Unsafe ´ëüÇϱâ 726¢º ¿ä¾à 731CHAPTER 18 ¾ÕÀ¸·ÎÀÇ ÀÚ¹Ù 73218.1 ÇÁ·ÎÁ§Æ® ¾Ú¹ö 73318.2 ÇÁ·ÎÁ§Æ® Æijª¸¶ 73518.3 ÇÁ·ÎÁ§Æ® ·ë 74318.4 ÇÁ·ÎÁ§Æ® ¹ßÇÒ¶ó 75318.5 ÀÚ¹Ù 18 762¢º ¿ä¾à 763APPENDIX A ÀÚ¹Ù ¼±ÅÃÇϱâ 765A.1 ÀÚ¹Ù´Â ¿©ÀüÈ÷ ¹«·á´Ù 765A.2 ÀÚ¹Ù SE 8 À¯Áö 766A.3 ÀÚ¹Ù SE 11 ¹Þ±â 766A.4 ÀÚ¹Ù SE 17(Àå±â Áö¿ø ¹öÀü) ¹Þ±â 767A.5 À¯·á Áö¿ø 768APPENDIX B ÀÚ¹Ù 8¿¡¼ÀÇ ½ºÆ®¸²¿¡ ´ëÇÑ ¿ä¾à 769B.1 ÇÏÀ§ ȣȯ¼º 769B.2 µðÆúÆ® ¸Þ¼µå 770B.3 ½ºÆ®¸² 772B.4 Ä÷º¼ÇÀÇ ÇÑ°è 776B.5 ¹«ÇÑ ½ºÆ®¸² 776B.6 ¿ø½Ã ŸÀÔ ´Ù·ç±â 777B.7 º´·Ä ¿¬»ê? 779ã¾Æº¸±â 781