Mega Code Archive

 
Categories / Java / Reflection
 

Return a String representation of an objects overall identity

import java.lang.reflect.Array; import java.util.Arrays; /*  * Copyright 2002-2007 the original author or authors.  *  * Licensed under the Apache License, Version 2.0 (the "License");  * you may not use this file except in compliance with the License.  * You may obtain a copy of the License at  *  *      http://www.apache.org/licenses/LICENSE-2.0  *  * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  */ //Revised from springframework /**  * Miscellaneous object utility methods. Mainly for internal use within the  * framework; consider Jakarta's Commons Lang for a more comprehensive suite  * of object utilities.  *  * @author Juergen Hoeller  * @author Keith Donald  * @author Rod Johnson  * @author Rob Harrop  * @author Alex Ruiz  * @since 19.03.2004  * @see org.apache.commons.lang.ObjectUtils  */ abstract class ObjectUtils {   private static final int INITIAL_HASH = 7;   private static final int MULTIPLIER = 31;   private static final String EMPTY_STRING = "";   private static final String NULL_STRING = "null";   private static final String ARRAY_START = "{";   private static final String ARRAY_END = "}";   private static final String EMPTY_ARRAY = ARRAY_START + ARRAY_END;   private static final String ARRAY_ELEMENT_SEPARATOR = ", ";   /**    * Return a String representation of an object's overall identity.    * @param obj the object (may be <code>null</code>)    * @return the object's identity as String representation,    * or an empty String if the object was <code>null</code>    */   public static String identityToString(Object obj) {     if (obj == null) {       return EMPTY_STRING;     }     return obj.getClass().getName() + "@" + getIdentityHexString(obj);   }   /**    * Return a hex String form of an object's identity hash code.    * @param obj the object    * @return the object's identity code in hex notation    */   public static String getIdentityHexString(Object obj) {     return Integer.toHexString(System.identityHashCode(obj));   } }