Raw Types and Legacy Code

To handle the transition to generics, Java allows a generic class to be used without any type arguments.

Here is an example that shows a raw type in action:

class MyClass<T> {
  T ob;
  MyClass(T o) {
    ob = o;
  T getob() {
    return ob;
public class Main {
  public static void main(String args[]) {
    MyClass raw = new MyClass(new Double(98.6));
    double d = (Double) raw.getob();
    System.out.println("value: " + d);
  Java Book 
    Language Basics  

  1. Generic Class
  2. Generic Bounded Types
  3. Generic Wildcard Arguments
  4. Generic Bounded Wildcards
  5. Generic Method
  6. Generic Constructors
  7. Generic Interfaces
  8. Raw Types and Legacy Code
  9. Generic Class Hierarchies
  10. Run-Time Type Comparisons Within a Generic Hierarchy
  11. Overriding Methods in a Generic Class
  12. Generic Restrictions
  13. Generic Array Restrictions