Java Topics
Generics
Last Updated : 26 May, 2026
title: Generics in Java
title: Generics in Java description: Java Generics ka concept aur use
Type-safe code likhne ke liye. Compile time par type check hota hai.
Bina Generics (Old way)
List list = new ArrayList();
list.add("Hello");
list.add(123); // No error at compile time!
String s = (String) list.get(1); // ClassCastException at runtime!Generics ke saath
List<String> list = new ArrayList<>();
list.add("Hello");
list.add(123); // Compile error! Type safe
String s = list.get(0); // No cast neededGeneric Class
class Pair<T, U> {
T first;
U second;
Pair(T first, U second) {
this.first = first;
this.second = second;
}
T getFirst() { return first; }
U getSecond() { return second; }
}
Pair<String, Integer> p = new Pair<>("Age", 25);Generic Method
<T extends Comparable<T>> T findMax(T a, T b) {
return a.compareTo(b) >= 0 ? a : b;
}
findMax(10, 20); // 20
findMax("Apple", "Banana"); // "Banana"Wildcards
// Upper bounded — Number ya uske subclass
void printList(List<? extends Number> list) {
for (Number n : list) System.out.println(n);
}
// Lower bounded — Integer ya uske superclass
void addIntegers(List<? super Integer> list) {
list.add(1); list.add(2);
}
// Unbounded — Any type
void printAny(List<?> list) {
for (Object o : list) System.out.println(o);
}Type Erasure
Generics sirf compile time par hoti hain. Runtime par type information remove ho jaati hai (type erasure).
Exam Focus
Revise definitions, diagrams, examples, and short-answer points for Generics.
Interview Use
Prepare one clear explanation, one practical example, and one common mistake for this Java topic.
Search Terms
java, java programming, core java, java master course, java notes, master, course, collections
Related Java Topics