জাভা ৯-এ একটি বড় পরিবর্তন হলো মডিউল সিস্টেম (Module System)। জাভা ৯ জিগস (Jigsaw) প্রজেক্টের অংশ হিসেবে নিচের ফিচারগুলো চালু করেছে:
- মডুলার জেডিকে (Modular JDK)
- মডুলার জাভা সোর্স কোড (Modular Java Source Code)
- মডুলার রান-টাইম ইমেজ (Modular Run-time Images)
- এনক্যাপসুলেট জাভা ইন্টারনাল APIs (Encapsulate Java Internal APIs)
- জাভা প্ল্যাটফর্ম মডিউল সিস্টেম (Java Platform Module System)
মডিউল সিস্টেম ব্যবহারের একটি প্রধান উদ্দেশ্য হলো মডুলার জেভিএম প্রদান করা যা কম মেমোরি वाले ডিভাইসে চালানো যায়। জেভিএম শুধু অ্যাপ্লিকেশনের প্রয়োজনীয় মডিউল ও API-গুলোর সাথে রান করে।
সিনট্যাক্স
module Module-Name {
requires moduleName;
exports packageName;
}
মডুলার জার ফাইলে একটি অতিরিক্ত মডিউল ডেসক্রিপ্টর থাকে। এই মডিউল ডেসক্রিপ্টরে অন্যান্য মডিউলের ওপর নির্ভরতা "requires" স্টেটমেন্ট দিয়ে এক্সপ্রেস করা হয়। "exports" স্টেটমেন্ট নিয়ন্ত্রণ করে কোন প্যাকেজগুলোর অ্যাক্সেস অন্যান্য মডিউলগুলোর জন্য থাকবে।