In this chapter, we've created a second Java module and established inter-module dependency. We learned how to set up requires and exports in module definition files. With two modules, we are finally able to see the modularity features that attempt to solve some of the problems in code organization and management that we've discussed in Chapter 1, Introducing Java 9 Modularity.
Now that we have a basic understanding of how to create Java 9 modules and use them in other modules, let's focus our attention to the platform itself. Java 9 not only comes with the module system that's meant for developers to use in order to create modules, it also comes with a completely revamped JRE and JDK that are themselves modularized. In the next chapter, you'll learn about the modularization of the platform, how it affects developers, and how it is, in a way, essential...