public static String toString(Object object, ToStringStyle style) {
        return toString(object, style, false, false, null);
    }
<p>
Builds a <code>toString</code> value through reflection.
</p>

<p>
It uses <code>AccessibleObject.setAccessible</code> to gain access to private fields. This means that it will
throw a security exception if run under a security manager, if the permissions are not set up correctly. It is
also not as efficient as testing explicitly.
</p>

<p>
Transient members will be not be included, as they are likely derived. Static fields will not be included.
Superclass fields will be appended.
</p>

<p>
If the style is <code>null</code>, the default <code>ToStringStyle</code> is used.
</p>

@param object
           the Object to be output
@param style
           the style of the <code>toString</code> to create, may be <code>null</code>
@return the String result
@throws IllegalArgumentException
            if the Object or <code>ToStringStyle</code> is <code>null</code>
android/android_framework/base/src/main/java/lang3/builder/ReflectionToStringBuilder.java