Book Image

Java 9 with JShell

By : Gaston C. Hillar
Book Image

Java 9 with JShell

By: Gaston C. Hillar

Overview of this book

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.
Table of Contents (23 chapters)
Java 9 with JShell
Credits
About the Author
Acknowledgement
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Declaring a class that works with two constrained generic types


The following lines declare a PartyWithHearable subclass of the previously created Party<T> class that takes advantage of generics to work with two constrained types. The type constraints declaration is included within angle brackets (<>). In this case, we have two generic type parameters: T and U. The generic type parameter named T must implement both the Sociable and Comparable<Sociable> interfaces, as it happened in the Party<T> superclass. The generic type parameter named U must implement the Hearable interface. Notice that the extends keyword that follows the type parameter allows us to add the constraints to the generic type parameters and the same keyword after the angle brackets specifies that the class inherits from the Party<T> superclass. This way, the class specifies constraints for both the T and U generic type parameters, and inherits from Party<T>.The code file for the sample...