@SuppressWarnings("unchecked")
    @Override
    public final <T> T get(final IKey<T> key) {
        T value = (T) config.get(key.key());

        return value != null ? value : key.getDefaultValue();
    }
@ SuppressWarnings ( "unchecked" ) @ Override public final < T > T get ( final IKey < T > key ) { T value = ( T ) config . get ( key . key ( ) ) ; return value != null ? value : key . getDefaultValue ( ) ; }
returns the value for the given key. If no value is set, the
default value will be returned.

@param key The key to read.
@return the value.