Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mastering Java 11

You're reading from   Mastering Java 11 Develop modular and secure Java applications using concurrency and advanced JDK libraries

Arrow left icon
Product type Paperback
Published in Sep 2018
Publisher Packt
ISBN-13 9781789137613
Length 462 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Dr. Edward Lavieri Jr. Dr. Edward Lavieri Jr.
Author Profile Icon Dr. Edward Lavieri Jr.
Dr. Edward Lavieri Jr.
Mandar Jog Mandar Jog
Author Profile Icon Mandar Jog
Mandar Jog
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Preface 1. The Java 11 Landscape FREE CHAPTER 2. Discovering Java 11 3. Java 11 Fundamentals 4. Building Modular Applications with Java 11 5. Migrating Applications to Java 11 6. Experimenting with the Java Shell 7. Leveraging the Default G1 Garbage Collector 8. Microbenchmarking Applications with JMH 9. Making Use of the Process API 10. Fine-Grained Stack Tracing 11. New Tools and Tool Enhancements 12. Concurrency Enhancements 13. Security Enhancements 14. Command-Line Flags 15. Additional Enhancements to the Java Platform 16. Future Directions 17. Contributing to the Java Platform 18. Assessment 19. Other Books You May Enjoy

How modules fit into the Java landscape

As you can see from the following diagram, packages are comprised of classes and interfaces, and modules are comprised of packages. Modules are a container of packages. This is the basic premise, at a very high level, of Java's modular system. It is important to view modules as part of the modular system and not simply as a new level of abstraction above packages, as the following diagram suggests:

So, modules are new to Java 9 and as you would expect, they require declaration before they can be used. A module's declaration includes names of other modules in which it has a dependency. It also exports packages for other modules that have dependencies to it. Modular declarations are arguably the most important modular issue to address as you start developing with Java. Here is an example:

module com.three19.irisScan {
// modules...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime