code: @Override
    public <T> T convert(Object value, final Class<T> toType) {
      return useDefault(value, toType) ? getDefaultValue(toType) : super.convert(value, toType);
    }
docs: Converts the {@link Object value} into an {@link Object} of the speicfied target {@link Class type}.
  
  If {@link Object value} is {@literal null} and {@link Object default values} have been
  {@link #isDefaultValuesEnabled()} enabled}, then the {@link Object default value} will be based on
  the {@link Class type} to convert to and the {@link Class type} has been initialized with
  a {@link Object default value}.
  
  @param <T> {@link Class target type} of the conversion.
  @param value {@link Object value} to convert.
  @param toType {@link Class type} to convert the {@link Object value} into.
  @return the {@link Object value} converted into an instance of the desired {@link Class target type},
  or a {@link Object default value} if the {@link Object converted value} is {@literal null},
  {@link Object default values} are {@link #isDefaultValuesEnabled()} enabled} and the {@link Class type}
  has been set with a {@link Object default value}.
  @throws ConversionException if converting the {@link Object value} into an instance of
  the {@link Class target type} results in error.
  @see org.cp.elements.data.conversion.AbstractConversionService#convert(Object, Class)
  @see org.cp.elements.data.conversion.Converter#convert(Object)
  @see #useDefault(Object, Class)
  @see #getDefaultValue(Class)
  @see java.lang.Class