পাঠ ৮: জেনেরিকস
জেনেরিকস ইন জাভা (Generics in Java)
//একটি সিম্পল ক্লাস , এখানে T হচ্ছে টাইপ প্যারামিটার যা অবজেক্ট তৈরি করার সময় রিয়েল টাইপ দিয়ে রিপ্লেস হবে
public class Generic<T> {
T obj;
// একটা টাইপ ভ্যারিয়বল ডিক্লেয়ার করা হলো
// কনস্ট্রাকটর – যে একটি রিয়েল অবজেক্ট আর্গুমেন্ট হিসেবে নেয়
public Generic(T obj) {
this.obj = obj;
}
// অবজেক্টটি একসেস করার জন্যে একটি মেথড
public T getObj() {
return obj;
}
// রানটাইমে অবজেক্ট-এর টাইপ আসলে কি , তা প্রিণ্ট করে দেখি
public void showType() {
System.out.println("Type of T is: " + obj.getClass().getName());
}
public static void main(String[] args) {
// একটি ইন্টিজার এর রেফারেন্স
Generic<Integer> iObj;
// অবজেক্ট তৈরি করি এবং iObj রেফারেন্স এ এসাইন করি এবং কনস্ট্রাকটর আর্গুমেন্ট হিসেবে 88 পাস করি
iObj = new Generic<Integer>(88);
// রানটাইম-এ তাহলে জেনেরিক ক্লাসটিতে T obj একটি ইন্টিজার হয়ে যাওয়ার কথা, প্রিন্ট করে দেখা যাক
iObj.showType();
int v = iObj.getObj();
// ইন্টিজার ভ্যালুটি এর ভ্যালু একসেস ককরে v তে রাখা হল
System.out.println("value: " + v);
// প্রিন্ট করি, যেখা যাক, আমরা এর ভ্যালু ঠিক ঠাক মতো পাওয়া যায় কিনা
//এভাবে আমরা একটি স্ট্রিং টাইপ দিয়েও পরীক্ষা করতে পারি।
Generic<String> strOb = new Generic<String>("This is a Generics Test");
strOb.showType();
String str = strOb.getObj();
System.out.println("value: " + str);
}
}
`জেনেরিকস শুধুমাত্র অজজেক্ট নিয়ে কাজ করে-
Bounded Types
Wildcard Arguments
Generic Methods
Last updated