{"componentChunkName":"component---src-templates-blog-post-js","path":"/blog/2020-05-31-jdk-version/","result":{"data":{"markdownRemark":{"id":"ac0ad77c-e535-58f1-a85d-0bcd8d4c16fe","html":"<p><img src=\"/img/chemex.jpg\" alt=\"chemex\"></p>\n<p>JDK versions</p>\n<h2>jdk5</h2>\n<h3>java 内存模型</h3>\n<h2>jdk6</h2>\n<h2>jdk7</h2>\n<h2>jdk8</h2>\n<h3>lambda</h3>\n<blockquote>\n<p>惰性求值 lazy evaluation</p>\n</blockquote>\n<h3>Funcational Interface</h3>\n<p>提供函数式编程能力</p>\n<h4>方法引用</h4>\n<h3>hashmap</h3>\n<p>调整 hashmap 底层实现</p>\n<h3>Interface Default method</h3>\n<p>新增 default 关键字，接口方法支持默认实现</p>\n<h3>TemporalQuery</h3>\n<h3>@Contended</h3>\n<p>缓存对齐\nJVM -XX:-RestrictContended 禁止竞争</p>\n<h2>jdk9</h2>\n<h3>jshell</h3>\n<p>一个 REPL(Read Eval Print Loop) 工具</p>\n<h3>Thread</h3>\n<p>自旋锁 spin lock</p>\n<h2>jdk10</h2>\n<h3>var</h3>\n<h2>jdk11</h2>\n<h3>GC</h3>\n<p>改进垃圾回收机制</p>\n<h3>AQS</h3>\n<p>去掉了 AbstractQuenueSynchronizer state 的 volatile 关键字，加上了 transients</p>\n<h2>jdk13</h2>\n<h2>jdk14</h2>","frontmatter":{"date":"May 31, 2020","title":"JDK","description":"JDK versions","tags":["JAVA","JDK"]}}},"pageContext":{"id":"ac0ad77c-e535-58f1-a85d-0bcd8d4c16fe"}}}