The modularity features in Java 9 are together referred to by the name Java Platform Module System (JPMS). It introduces a new language construct to create reusable components called modules. The Java Platform Module System makes it easy for developers to create contained units or components that have clearly established dependencies on other modules. With Java 9 modules, you can group certain types and packages into a module and provide it with the following information:
- Its name: This is a unique name for the module
- Its inputs: What does the module need and use? What's required for the given module to be compiled and run?
- Its outputs: What does this module output or export out to other modules?
I'll explain ...