@SuppressWarnings("unchecked")
    public static Class<Object> getLocalClassType(Class<?> declaringClass, int occurrence, String name)
            throws ClassNotFoundException {
        return (Class<Object>) Class.forName(declaringClass.getName() + "$" + occurrence + name);
    }
@ SuppressWarnings ( "unchecked" ) public static Class < Object > getLocalClassType ( Class < ? > declaringClass , int occurrence , String name ) throws ClassNotFoundException { return ( Class < Object > ) Class . forName ( declaringClass . getName ( ) + "$" + occurrence + name ) ; }
Get the type of a local inner class.

@param declaringClass The class in which the local inner class is declared.
@param occurrence     The occurrence of the local class. For example if you have two
local classes in the {@code declaringClass} you must pass
in {@code 1} if you want to get the type for the first
one or {@code 2} if you want the second one.
@param name           The unqualified name (simple name) of the local class.
@return The type.
@throws ClassNotFoundException the class not found exception