code: public String getHostName() {
          if (holder().getHostName() == null) {
              holder().hostName = InetAddress.getHostFromNameService(this);
          }
          return holder().getHostName();
      }
docs: Gets the host name for this IP address.
  
  <p>If this InetAddress was created with a host name,
  this host name will be remembered and returned;
  otherwise, a reverse name lookup will be performed
  and the result will be returned based on the system
  configured name lookup service. If a lookup of the name service
  is required, call
  {@link #getCanonicalHostName() getCanonicalHostName}.
  
  <p>If there is a security manager, its
  <code>checkConnect</code> method is first called
  with the hostname and <code>-1</code>
  as its arguments to see if the operation is allowed.
  If the operation is not allowed, it will return
  the textual representation of the IP address.
  
  @return  the host name for this IP address, or if the operation
  is not allowed by the security check, the textual
  representation of the IP address.
  
  @see InetAddress#getCanonicalHostName
  @see SecurityManager#checkConnect