code: public Object get(Object obj) throws ReflectionException {
          try {
              if (isPublic(readMethod)) {
                  return readMethod.invoke(obj);
              } else {
                  throw new ReflectionException("Cannot get the value of " + this + ", as it is write-only.");
              }
          } catch (Exception e) {
              throw new ReflectionException("Cannot get the value of " + this + " in object " + obj, e);
          }
      }
docs: Returns the value of the representation of this property from the specified object.
  
  <p> The underlying property's value is obtained trying to invoke the {@code readMethod}.
  
  <p> If this {@link Property} object has no public {@code readMethod},
  it is considered write-only, and the action will be prevented throwing
  a {@link ReflectionException}.
  
  <p> The value is automatically wrapped in an object if it has a primitive type.
  
  @param obj object from which the property's value is to be extracted
  @return the value of the represented property in object {@code obj}
  @throws ReflectionException if access to the underlying method throws an exception
  @throws ReflectionException if this property is write-only (no public readMethod)