एक मॉड्यूल एप्लिकेशन की एक स्वतंत्र इकाई है जो एकल कार्यक्षमता का प्रतिनिधित्व करता है। एक मॉड्यूल में तीन महत्वपूर्ण घटक होते हैं
- नाम: इसे विशिष्ट रूप से पहचानने के लिए
- निर्भरता: अन्य मॉड्यूल जिन पर यह निर्भर करता है
- निर्यात किए गए पैकेज: पैकेज जो बाहरी अनुप्रयोग के लिए खुले हैं
मॉड्यूल घोषित करने के लिए, हमें "मॉड्यूल-info.java जोड़ना होगा। " रूट सोर्स कोड में फाइल करें। "मॉड्यूल-info.java . के घटक " फ़ाइल में "नाम . शामिल है ", "आवश्यकता ", "निर्यात ", और "को निर्यात करता है ".
नीचे "मॉड्यूल-info.java" . का टेम्प्लेट है फ़ाइल
module <module-name> { requires <module-name1> ; requires <module-name2>; ... exports <package-name1>; exports <package-name2>; ... exports <package-name> to <module-name>; }
- नाम: यह एक मॉड्यूल की एक महत्वपूर्ण विशेषता है। मॉड्यूलर प्रणाली नाम से एक मॉड्यूल की पहचान करती है, इसलिए यह अद्वितीय है।
- आवश्यकता: इस खंड का उपयोग निर्भरता . को परिभाषित करने के लिए किया जा सकता है और बाहरी मॉड्यूल जिसमें वर्तमान मॉड्यूल निर्भर करता है। हमें अलग "आवश्यकता . की आवश्यकता है " "module-info.java" . में प्रत्येक आश्रित मॉड्यूल के लिए प्रविष्टि . Java 9 का एक आधार . है मॉड्यूल . यह एक स्वतंत्र मॉड्यूल है जिसे किसी अन्य मॉड्यूल की आवश्यकता नहीं है। हमें मॉड्यूल में "आवश्यकता" खंड का उपयोग करके निर्दिष्ट करने की आवश्यकता नहीं है। यह आधार मॉड्यूल डिफ़ॉल्ट रूप से उपलब्ध है ।
- निर्यात: "निर्यात" खंड वर्तमान मॉड्यूल निर्यात के पैकेज को परिभाषित करना है। ये पैकेज अन्य मॉड्यूल के उपयोग के लिए खुले हैं। हमें अलग "निर्यात . की आवश्यकता है "module-info.java" . में प्रत्येक निर्यात किए गए मॉड्यूल के लिए प्रविष्टि फ़ाइल
- को निर्यात करता है: "को निर्यात करता है " क्लॉज एक पैकेज को सभी के लिए निर्यात करने के बजाय केवल विशिष्ट मॉड्यूल को निर्यात करना है।