8. invokedynamic
invokestatic invokespecial
invokevirtual invokeinterface
invokedynamic (new)
"...an invokedynamic instruction is used to call
methods which have linkage and dispatch
semantics defined by non-Java languages..."
- http://www.infoq.com/articles/invokedynamic
10. strings in switch
switch (action) {
case "Red": stop(); break;
case "Yellow": slowDown(); break;
case "Green": go(); break;
case "Blue": danceAJig(); break;
}
16. ARM
(automatic
resource
management)
try (InputStream is = url.openStream();
OutputStream os = new FileOutputStream(file)) {
// use resources...
}
(AutoCloseable)
19. honorable mention
java.util.Objects
jsr166y - Concurrency &
collections updates
Enhanced JMX agent and
MBeans
Autoloading of JDBC
drivers
Method to close a
URLClassLoader
JDBC 4.1
20. assembly-coding
Class Loader architecture updates (parallel-capable)
Strict class file checking
Elliptic curve cryptography (ECC)
New garbage collector (lower pause times & better
predictability than current CMS collector)