ইউটিলিটি ক্লাস/পদ্ধতি

একটি ইউটিলিটি ক্লাস হল একটি সহায়ক শ্রেণী যেখানে স্ট্যাটিক ভেরিয়েবল এবং স্ট্যাটিক পদ্ধতি রয়েছে যা সম্পর্কিত কাজের একটি নির্দিষ্ট তালিকা সম্পাদন করে।

আসুন স্ট্যান্ডার্ড ইউটিলিটি ক্লাসের উদাহরণ দেখি:

java.lang.Math এই শ্রেণীটি, যা বিভিন্ন গাণিতিক গণনা করতে পারে, আমাদের কিছু গাণিতিক ধ্রুবক দেয়।
java.util.Arrays ক্লাসে অ্যারেগুলির সাথে কাজ করার জন্য বিভিন্ন পদ্ধতি রয়েছে (যেমন তাদের সাজানো এবং অনুসন্ধান করা)। এই ক্লাসের একটি স্ট্যাটিক ফ্যাক্টরিও রয়েছে যা আমাদের অ্যারেগুলিকে তালিকা হিসাবে দেখতে দেয়।
java.lang. System এই ক্লাস সিস্টেমের সাথে কাজ করার জন্য পদ্ধতি প্রয়োগ করে। প্রায়শই আমরা কনসোলে পাঠ্য প্রদর্শন করতে এটি ব্যবহার করি। এটি করার জন্য, আমরা স্ট্যাটিক উল্লেখ করিআউটভেরিয়েবল, যা একটি প্রিন্টস্ট্রিম অবজেক্ট সঞ্চয় করে এবং এর প্রিন্টএলন পদ্ধতি ( System.out.println ) বলে।

আমরা নিজেরাও একটি ইউটিলিটি ক্লাস তৈরি করতে পারি: এটি করার জন্য, আমরা কেবল আমাদের প্রয়োজনীয় স্ট্যাটিক পাবলিক পদ্ধতিগুলির সাথে একটি ক্লাস তৈরি করি। কিন্তু মনে রাখবেন যে আপনার একটি ইউটিলিটি ক্লাস তৈরি করার জন্য একটি ভাল কারণ থাকা উচিত। উদাহরণস্বরূপ, সম্ভবত আপনাকে বিভিন্ন ক্লাসে একটি একক কাজ (যেমন একটি জটিল গণনা) করতে একই পদ্ধতি বা পদ্ধতির সেট ব্যবহার করতে হবে।

আসুন একটি ইউটিলিটি ক্লাসের উদাহরণ দেখি — পাথ ক্লাস।

পাথ ক্লাস

এই ক্লাসে শুধুমাত্র একটি স্ট্যাটিক গেট পদ্ধতি রয়েছে যার দুটি ভিন্ন ভিন্ন প্যারামিটার তালিকা রয়েছে।

আমরা যে আর্গুমেন্টগুলি পেতে পারি তা হল :

পান (প্রথমে স্ট্রিং, স্ট্রিং... আরো) একটি সম্পূর্ণ পথ বা ডিরেক্টরির নামের তালিকা এবং (বা) শেষ আর্গুমেন্টে ফাইল।
পান (ইউআরআই ইউরি) একটি ইউআরআই।

এই ইউটিলিটি ক্লাস একটি পাথ (একটি স্ট্রিং আকারে) বা URI কে একটি পাথে রূপান্তর করার সমস্যার সমাধান করে । আমরা ইতিমধ্যে পাথ অন্বেষণ করেছি এবং বুঝতে পেরেছি কেন এটি আমাদের প্রয়োজন এবং আমরা কীভাবে এটির সাথে কাজ করতে পারি।

এটি যেমন ঘটে, আমরা প্রায়শই স্ট্রিং বা ইউআরআই আকারে পাথগুলি নিয়ে কাজ করি । এখানেই আমরা পাথস ইউটিলিটি ক্লাসের পদ্ধতিগুলি ব্যবহার করতে পারি।

আসুন উদাহরণ দেখি:

উদাহরণ মন্তব্য করুন

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    
আমরা get পদ্ধতিটি একটি স্ট্রিং (ফাইলের পথ) পাস করি এবং একটি পথ পাই । তারপরে আমরা এটির সাথে প্রয়োজন অনুসারে কাজ করতে পারি।

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    
একটি URI থেকে একটি পথও পাওয়া যেতে পারে।

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    
আমরা ডিরেক্টরির নামগুলির ক্রম এবং ফাইলের নাম নির্দেশ করি যার পাথ প্রয়োজনের সাথে।

কিন্তু এখানে একটি সতর্কতা আছে। জাভা 11-এর আগমনের সাথে, get মেথডের যেকোনো বাস্তবায়ন Path.of কে কল করে ।


public static Path get(String first, String... more) {
    return Path.of(first, more);
}
 
public static Path get(URI uri) {
    return Path.of(uri);
}
    

এই ইউটিলিটি ক্লাসটি অবহেলিত ঘোষণা করা হতে পারে, তাই এর পরিবর্তে আমাদের Path.of ব্যবহার করা উচিত।

আগে পরে

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path =
Path.of("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Path.of(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    

ath path = Path.of(System.getProperty("user.home"),"documents", "document.txt");