< prev index next >

src/java.base/share/classes/sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl.java

Print this page




 195             return false;
 196     }
 197 
 198     @Override
 199     public int hashCode() {
 200         return
 201             Arrays.hashCode(actualTypeArguments) ^
 202             Objects.hashCode(ownerType) ^
 203             Objects.hashCode(rawType);
 204     }
 205 
 206     public String toString() {
 207         StringBuilder sb = new StringBuilder();
 208 
 209         if (ownerType != null) {
 210             if (ownerType instanceof Class)
 211                 sb.append(((Class)ownerType).getName());
 212             else
 213                 sb.append(ownerType.toString());
 214 
 215             sb.append(".");
 216 
 217             if (ownerType instanceof ParameterizedTypeImpl) {
 218                 // Find simple name of nested type by removing the
 219                 // shared prefix with owner.
 220                 sb.append(rawType.getName().replace( ((ParameterizedTypeImpl)ownerType).rawType.getName() + "$",
 221                                          ""));
 222             } else
 223                 sb.append(rawType.getName());
 224         } else
 225             sb.append(rawType.getName());
 226 
 227         if (actualTypeArguments != null &&
 228             actualTypeArguments.length > 0) {
 229             sb.append("<");
 230             boolean first = true;
 231             for(Type t: actualTypeArguments) {
 232                 if (!first)
 233                     sb.append(", ");
 234                 sb.append(t.getTypeName());
 235                 first = false;
 236             }
 237             sb.append(">");
 238         }
 239 
 240         return sb.toString();
 241     }
 242 }


 195             return false;
 196     }
 197 
 198     @Override
 199     public int hashCode() {
 200         return
 201             Arrays.hashCode(actualTypeArguments) ^
 202             Objects.hashCode(ownerType) ^
 203             Objects.hashCode(rawType);
 204     }
 205 
 206     public String toString() {
 207         StringBuilder sb = new StringBuilder();
 208 
 209         if (ownerType != null) {
 210             if (ownerType instanceof Class)
 211                 sb.append(((Class)ownerType).getName());
 212             else
 213                 sb.append(ownerType.toString());
 214 
 215             sb.append("$");
 216 
 217             if (ownerType instanceof ParameterizedTypeImpl) {
 218                 // Find simple name of nested type by removing the
 219                 // shared prefix with owner.
 220                 sb.append(rawType.getName().replace( ((ParameterizedTypeImpl)ownerType).rawType.getName() + "$",
 221                                          ""));
 222             } else
 223                sb.append(rawType.getSimpleName());
 224         } else
 225             sb.append(rawType.getName());
 226 
 227         if (actualTypeArguments != null &&
 228             actualTypeArguments.length > 0) {
 229             sb.append("<");
 230             boolean first = true;
 231             for(Type t: actualTypeArguments) {
 232                 if (!first)
 233                     sb.append(", ");
 234                 sb.append(t.getTypeName());
 235                 first = false;
 236             }
 237             sb.append(">");
 238         }
 239 
 240         return sb.toString();
 241     }
 242 }
< prev index next >