জেনেরিক কালেকশন জাভা ৫ ভার্সনে معرفی করা হয়েছিল। জেনেরিক কালেকশন টাইপ-কাস্টিং অক্ষম করে এবং জেনেরিক্স ব্যবহার করার সময় টাইপ-কাস্টিং প্রয়োজন হয় না। জেনেরিক কালেকশন টাইপ-সেফ এবং এটি কম্পাইল-টাইমে চেক করা হয়। এই জেনেরিক কালেকশন ডেটা টাইপকে প্যারামিটার হিসেবে ক্লাসে পাস করার অনুমতি দেয়। কম্পাইলার টাইপের কম্প্যাটিবিলিটি চেক করার জন্য দায়ী।
সিনট্যাক্স
class<type>, interface<type>
টাইপ সেফটি
জেনেরিক্স একই টাইপের অবজেক্ট অনুমতি দেয়।
List list = new ArrayList(); // জেনেরিক্সের আগে
list.add(10);
list.add("100");
List<Integer> list1 = new ArrayList<Integer>(); // জেনেরিক্স যোগ করা
list1.add(10);
list1.add("100"); // কম্পাইল-টাইম এরর।
টাইপ কাস্টিং
জেনেরিক্স ব্যবহার করার সময় টাইপ-কাস্টিং প্রয়োজন নেই।
List<String> list = new ArrayList<String>();
list.add("Adithya");
String str = list.get(0); // টাইপ-কাস্টিংয়ের প্রয়োজন নেই
কম্পাইল-টাইম
জেনেরিক্স-এ এরর কম্পাইল-টাইমে চেক করা হয়।
List list = new ArrayList(); // জেনেরিক্সের আগে
list.add(10);
list.add("100");
List<Integer> list1 = new ArrayList<Integer>(); // জেনেরিক্স যোগ করা
list1.add(10);
list1.add("100"); // কম্পাইল-টাইম এরর