/* * @(#)IllegalFormatConversionException.java 1.3 04/05/05 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package java.util; /** * Unchecked exception thrown when the argument corresponding to the format * specifier is of an incompatible type. * *

Unless otherwise specified, passing a null argument to any * method or constructor in this class will cause a {@link * NullPointerException} to be thrown. * * @version 1.3, 05/05/04 * @since 1.5 */ public class IllegalFormatConversionException extends IllegalFormatException { private static final long serialVersionUID = 17000126L; private char c; private Class arg; /** * Constructs an instance of this class with the mismatched conversion and * the corresponding argument class. * * @param c * Inapplicable conversion * * @param arg * Class of the mismatched argument */ public IllegalFormatConversionException(char c, Class arg) { if (arg == null) throw new NullPointerException(); this.c = c; this.arg = arg; } /** * Returns the inapplicable conversion. * * @return The inapplicable conversion */ public char getConversion() { return c; } /** * Returns the class of the mismatched argument. * * @return The class of the mismatched argument */ public Class getArgumentClass() { return arg; } // javadoc inherited from Throwable.java public String getMessage() { return String.format("%c != %s", c, arg.getName()); } }