एक मॉड्यूल पुन: उपयोग के लिए डिज़ाइन किए गए पैकेजों का एक कंटेनर है, और प्रत्येक मॉड्यूल में एक मॉड्यूल डिस्क्रिप्टर होता है जिसमें मॉड्यूल नाम, मॉड्यूल निर्भरताएं (उन अन्य मॉड्यूल के नाम जिन पर यह निर्भर करता है) और निर्यात किए गए पैकेजों के नाम के बारे में जानकारी शामिल होती है जिनका उपयोग केवल उन मॉड्यूल द्वारा किया जा सकता है जो इस पर निर्भर करते हैं।
मॉड्यूल के फायदे
- मजबूत एनकैप्सुलेशन मॉड्यूल सिस्टम के प्रमुख फायदों में से एक है क्योंकि public एक्सेस स्पेसिफायर अब सभी के लिए सुलभ नहीं है। मॉड्यूल सिस्टम का उपयोग करके, हम पैकेजों के एक सीमित सेट को बाहरी एप्लिकेशन के लिए सुलभ बना सकते हैं।
- यह हमारे एप्लिकेशन को हल्का बनाता है, इसलिए इसे अधिक संख्या में डिवाइस पर चलाया जा सकता है। चूंकि यह हल्का है, यह एप्लिकेशन के प्रदर्शन में सुधार करता है।
- एक आर्किटेक्चर जो हमें अपने एप्लिकेशन को बाहरी और छिपे हुए पैकेज में विभाजित करने की अनुमति देता है, इसलिए चिंता के सिद्धांत का पालन करना आसान होता है।
- पैकेज में कुछ आंतरिक क्लासेस, उदाहरण के लिए, sun.security.*, com.sun.crypto.* अब सुलभ नहीं हैं क्योंकि ये पैकेज अब छिपे हुए हैं, इसलिए सुरक्षा में सुधार होता है।
एक मॉड्यूल को module-info.java नामक फाइल के अंदर घोषित किया जा सकता है, जो मॉड्यूल डिस्क्रिप्टर है।
module com.tutorialspoint.app{ // मॉड्यूल जिन पर मॉड्यूल "com.tutorialspoint.app" निर्भर करता है requires com.tutorialspoint.services; // इस मॉड्यूल द्वारा उजागर किए गए पैकेज जिनका उपयोग अन्य मॉड्यूल द्वारा किया जा सकता है exports com.tutorialspoint.app.util; }