Sessions

CON7066   Effective Java Streams

CON7066 Effective Java Streams

1 year ago
This session discusses the present and future of the Java SE Stream API. The first part focuses on effective use of the Stream API, which often requires some tricks/idioms that, when learned, can seem obvious in hindsight. The presentation includes several such tricks. You will then hear about tricks for effective parallel execution, where a […]
CON6823   Project Jigsaw   Under the Hood

CON6823 Project Jigsaw Under the Hood

1 year ago
What is the difference between readability, observability, visibility, and accessibility in the Java Platform Module System? What is the unnamed module, and why is it important? What happened to the platform’s built-in class loaders? How can you load two different versions of a module at the same time? This session answers all these questions and […]
CON5107   Prepare for JDK 9

CON5107 Prepare for JDK 9

1 year ago
The modularization of the Java SE platform in JDK 9 will bring many benefits but also many changes. Existing code that uses only official Java SE Platform APIs and supported JDK-specific APIs should continue to work without change. Code that uses certain deprecated features or any JDK-internal APIs is likely to break, however. This session […]
CON5118   Introduction to Modular Development

CON5118 Introduction to Modular Development

1 year ago
In this gentle introduction, with examples, to the forthcoming Java Platform Module System, you will learn how to create a module from scratch, compile it, test it, and run it. The session also shows basic techniques for modularizing existing libraries and applications. Speakers: Alan Bateman, Consulting Member of Staff, Oracle Mark Reinhold is chief architect […]
CON8366   Programming with Lambdas

CON8366 Programming with Lambdas

1 year ago
“Java has lambdas” is such an understatement. Sure, as programmers, we’re interested in learning how to use lambdas. However, as curious programmers, we like to learn far more than that. How are lambdas implemented, and why are they implemented that way? This example-driven presentation discusses how to use lambdas and method references and takes a […]
CON5823   Moving to G1 GC

CON5823 Moving to G1 GC

1 year ago
This session looks at several case studies where applications have been moved to use the Garbage First garbage collector (G1 GC). The G1 GC has come a long way since it was first supported, in Java 7 update 4. At that time, it was very difficult, if not impossible, to obtain results that came close […]
CON6851   API Design with Java 8 Lambdas and Streams

CON6851 API Design with Java 8 Lambdas and Streams

1 year ago
During Java’s 20-year history, a set of API design idioms and styles has emerged, based on the existing language features and APIs. Certain language features, such as generics, have had a great impact: 12 years after their introduction, APIs that use raw types look distinctly old-fashioned. Java 8 has introduced lambda expressions, methods implementations in […]
TUT6825   Project Jigsaw Hack Session

TUT6825 Project Jigsaw Hack Session

1 year ago
Informal hack session with members of the Project Jigsaw Team. Speakers: Alan Bateman, Consulting Member of Staff, Oracle Mark Reinhold, Chief Architect, Java Platform Group, Oracle Mark Reinhold is chief architect of the Java Platform Group at Oracle. His past contributions to the platform include character-stream readers and writers, reference objects, shutdown hooks, the NIO […]
CON11284   JDK 9 Language and Tooling Features

CON11284 JDK 9 Language and Tooling Features

1 year ago
Although modularity support as part of Project Jigsaw/JSR 376 is the largest language change coming in Java SE 9, this session discusses many other improvements also slated for JDK 9 in the Java programming language and related tooling. On the language front, some polish has been added to the Project Coin features and the number […]
CON6826   Ask the Architects

CON6826 Ask the Architects

1 year ago
Bring your favorite questions about Java SE and the Java Development Kit—past, present, or future—to this open Q&A session with key architects from Oracle’s Java team Speakers: Brian Goetz, Java Language Architect, Oracle Brian Goetz is the Java Language Architect at Oracle, and was specification lead for JSR-335 (Lambda Expressions for the Java Language.) He […]
CON1517 An Introduction to JVM Performance

CON1517 An Introduction to JVM Performance

1 year ago
Writing software for a virtual machine enables developers to forget about machine code assembly, interrupts, and processor caches. This makes Java a convenient language, but all too many developers see the JVM as a black box and are often unsure of how to optimize their code for performance. This unfortunately adds credence to the myth […]
CON6891 20 Years of APIs A Retrospective

CON6891 20 Years of APIs A Retrospective

1 year ago
Java has changed significantly since 1995. Back then it was new and different and weird and cool. But from today’s perspective, it’s amazing how old-fashioned things looked: not only code and APIs, but everything. In Java 1.0, there were only eight public API packages. The main data structures were Vector and Hashtable (with a small […]