code: public JsonElement toJsonTree(Object src) {
      if (src == null) {
        return JsonNull.INSTANCE;
      }
      return toJsonTree(src, src.getClass());
    }
docs: This method serializes the specified object into its equivalent representation as a tree of
  {@link JsonElement}s. This method should be used when the specified object is not a generic
  type. This method uses {@link Class#getClass()} to get the type for the specified object, but
  the {@code getClass()} loses the generic type information because of the Type Erasure feature
  of Java. Note that this method works fine if the any of the object fields are of generic type,
  just the object itself should not be of a generic type. If the object is of generic type, use
  {@link #toJsonTree(Object, Type)} instead.
  
  @param src the object for which Json representation is to be created setting for Gson
  @return Json representation of {@code src}.
  @since 1.4