কম্পিউটার টিউটোরিয়াল

জাভা ৯-এ module-info ফাইলে export ক্লজের ব্যবহার

একটি মডিউল হলো কোড এবং ডেটা-র কম্বিনেশন যার একটি নাম থাকে, অন্য মডিউলগুলোর ওপর ডিপেন্ডেন্সি ডিক্লেয়ার করে, প্যাকেজ এক্সপোর্ট করে যাতে পাবলিক টাইপস বাইরে থেকে অ্যাক্সেসযোগ্য হয়, এবং সার্ভিসেস সপেসিফাই করে যা এটি ব্যবহার করে বা প্রদান করে। এই সব module-info.java ফাইলে সপেসিফাই থাকে, যা মডিউলের রুট ডিরেক্টরিতে থাকে।

module-info.java ফাইলে দুটি ধরনের "export" ক্লজ ব্যবহার করা যায়।

১) export <package>: ডিফল্টভাবে, একটি মডিউলের টাইপ public বাইরে থেকে দৃশ্যমান নয়। অন্য মডিউল থেকে একটি প্যাকেজের পাবলিক টাইপস দৃশ্যমান করতে হলে, আমাদের এই প্যাকেজটি export করতে হবে। মনে রাখবেন যে আমরা প্যাকেজ লেভেলে আছি, টাইপের ইউনিট লেভেলে নয়। কিন্তু সাব-প্যাকেজগুলো এক্সপোর্ট হয় না।

আমরা tp.com.tutorialspoint.model প্যাকেজের ক্লাস ও ইন্টারফেস অন্য মডিউল ব্যবহার করতে দিতে চাইলে, নিচের মতো লিখতে পারি:

module com.tutorialspoint.model {
    exports tp.com.tutorialspoint.model;
}

খুব জরুরি বুঝতে হবে যে একটি প্যাকেজ শুধু একই মডিউলে থাকতে পারে। অন্যথায়, নিচের এরর আসবে:

Error:(1, 1) java: package exists in another module:

২) export <package> to <module>: আমরা আমাদের মডিউলগুলোর সিকিউরিটি বড়াতে পারি নির্দিষ্ট প্যাকেজের দৃশ্যমানতা একটি ফাইনাইট লিস্টের মডিউলে সীমাবদ্ধ করে: শুধু লিস্ট করা মডিউলগুলো এই ক্লাসগুলো অ্যাক্সেস করতে পারবে।

module com.tutorialspoint.model {
    exports tp.com.tutorialspoint.model
        to com.tutorialspoint.gui;
}
  1. জাভাতে অবজেক্ট ক্লোনিংয়ের ব্যবহার

  2. জাভাতে StrictMath ক্লাসের ব্যবহার

  3. জাভাতে setBounds() মেথডের ব্যবহার কী?

  4. পাইথন মডিউল এবং পাইথন প্যাকেজের পার্থক্য