// classname including internal names for anonymous classes used in serialisation

import java.util.Collection;
import java.util.ArrayList;
import java.util.AbstractList;

...

System.out.println( String.class );       // java.lang.String
System.out.println( int.class );          // int
System.out.println( int[].class );        // [I
System.out.println( Integer[].class );    // [Ljava.lang.Integer;

System.out.println( double.class );       // double
System.out.println( Double.class );       // java.lang.Double
System.out.println( Double.TYPE );        // double

AbstractList p = new ArrayList();
System.out.println( p.getClass() );       // java.util.ArrayList not AbstractList