Key Features
- A full account of Java 9’s new features
 - This tutorial emphasises fluency using JShell exercises
 - Get a thorough introduction to contract programming code reuse via Java generics
 - Learn how to use the new module system
 - How to use proper functional programming style inside Java 9
 
Book Description
The release of Java 9 has brought many subtle and not-so-subtle changes to the way in which Java programmers approach their code. The most important ones are definitely the availability of a REPL, known as JShell, which will make experiments and prototyping much more straightforward than the old IDE-based project-led approach. Another, more subtle change can be seen in the module system, which will lead to more modularized, maintainable code. The techniques to take full advantage of object-oriented code, functional programming and the new modularity features in Java 9 form the main subjects of this book.
Each chapter will add to the full picture of Java 9 programming starting out with classes and instances and ending with generics and modularity in Java.
What you will learn
- Engage with object-oriented programming in Java 9, starting with code snippets in JShell
 - Optimize your code, applying functional programming features
 - Discover the advantages of modularity
 - Become very proficient at using JShell itself
 - Learn the new approach to Java programming, which uses the REPL as a prototyping tool
 
About the Author
Gastón C. Hillar is Italian and has been working with computers since he was 8 years old. In the early 80s, he began programming with the legendary Texas TI-99/4A and Commodore 64 home computers. Gastón has a bachelor's degree in computer science (he graduated with honors). He also holds an MBA (he graduated with an outstanding thesis). At present, Gastón is an independent IT consultant and a freelance author who is always looking for new adventures around the world.
He was a senior contributing editor at Dr. Dobb's and has written more than a hundred articles on software development topics. He has received the prestigious Intel® Black Belt Software Developer award eight times. He has written many articles about Java for Oracle Java Magazine. Gastón was also a former Microsoft MVP in technical computing.
He is a guest blogger at Intel® Software Network (http://software.intel.com). You can reach him at gastonhillar@hotmail.com and follow him on Twitter at http://twitter.com/gastonhillar. Gastón's blog is http://csharpmulticore.blogspot.com.
He lives with his wife, Vanesa, and his two sons, Kevin and Brandon.
Table of Contents
- JShell – A Read-Evaluate-Print-Loop for Java 9
 - Real-World Objects to UML Diagrams and Java 9 via JShell
 - Classes and Instances
 - Encapsulation of Data
 - Mutable and Immutable Classes
 - Inheritance, Abstraction, Extension, and Specialization
 - Members Inheritance and Polymorphism
 - Contract Programming with Interfaces
 - Advanced Contract Programming with Interfaces
 - Maximization of Code Reuse with Generics
 - Advanced Generics
 - Object-Oriented, Functional Programming, and Lambda Expressions
 - Modularity in Java 9
 - Exercise Answers