previous | start | next

## Limitations of Generics

- Cannot form arrays of parameterized types
  `Comparable<E>[]` is illegal. Remedy: `ArrayList<Comparable<E>>`
- Cannot reference type parameters in a static context (static fields, methods, inner classes)
- Cannot throw or catch generic types
- Cannot have type clashes after erasure. Ex. `GregorianCalendar` cannot implement `Comparable<GregorianCalendar>` since it already implements `Comparable<Calendar>`, and both erase to `Comparable`

previous | start | next