### JavaDeserializer#getParamArg 
<img width="515" alt="1" src="https://user-images.githubusercontent.com/6971152/35181255-599cce00-fdf9-11e7-95b4-7d29314161be.png">
for values that between -128 ~ 127 , autoboxing or call valueOf() is more efficient than using consctrutor , and use less memory .

reference blog :
http://blog.csdn.net/qq_27093465/article/details/52473649

ways to change : change to  autoboxing  or  Xxx.valueOf(0);

### below is the change : 
```java
protected static Object getParamArg(Class cl) {
    if (!cl.isPrimitive())
        return null;
    else if (boolean.class.equals(cl))
        return Boolean.FALSE;
    else if (byte.class.equals(cl))
        return 0;
    else if (short.class.equals(cl))
        return 0;
    else if (char.class.equals(cl))
        return 0;
    else if (int.class.equals(cl))
        return 0;
    else if (long.class.equals(cl))
        return 0L;
    else if (float.class.equals(cl))
        return 0F;
    else if (double.class.equals(cl))
        return 0D;
    else
        throw new UnsupportedOperationException();
}
```




} catch (Exception e) {
            throw new IOExceptionWrapper(obj.getClass().getName() + ":" + e, e);
        }
    }
    private Object resolve(Object obj)
        throws Exception {
        
        try {
            if (_readResolve != null)
                return _readResolve.invoke(obj, new Object[0]);
        } catch (InvocationTargetException e) {
            if (e.getTargetException() != null)
                throw e;
        }
        return obj;
    }
    protected Object instantiate()
        throws Exception {
        try {
            if (_constructor != null)
                return _constructor.newInstance(_constructorArgs);
            else
                return _type.newInstance();
        } catch (Exception e) {
            throw new HessianProtocolException("'" + _type.getName() + "' could not be instantiated", e);
        }
    }
    /**
     * Creates a map of the classes fields.
     */