• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.  Oracle designates this
8  * particular file as subject to the "Classpath" exception as provided
9  * by Oracle in the LICENSE file that accompanied this code.
10  *
11  * This code is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  * version 2 for more details (a copy is included in the LICENSE file that
15  * accompanied this code).
16  *
17  * You should have received a copy of the GNU General Public License version
18  * 2 along with this work; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22  * or visit www.oracle.com if you need additional information or have any
23  * questions.
24  */
25 
26 package java.util;
27 
28 /**
29  * Unchecked exception thrown when the precision is a negative value other than
30  * {@code -1}, the conversion does not support a precision, or the value is
31  * otherwise unsupported. If the precision is not representable by an
32  * {@code int} type, then the value {@code Integer.MIN_VALUE} will be used
33  * in the exception.
34  *
35  * @since 1.5
36  */
37 public class IllegalFormatPrecisionException extends IllegalFormatException {
38 
39     @java.io.Serial
40     private static final long serialVersionUID = 18711008L;
41 
42     private int p;
43 
44     /**
45      * Constructs an instance of this class with the specified precision.
46      *
47      * @param  p
48      *         The precision
49      */
IllegalFormatPrecisionException(int p)50     public IllegalFormatPrecisionException(int p) {
51         this.p = p;
52     }
53 
54     /**
55      * Returns the precision. If the precision isn't representable by an
56      * {@code int}, then will return {@code Integer.MIN_VALUE}.
57      *
58      * @return  The precision
59      */
getPrecision()60     public int getPrecision() {
61         return p;
62     }
63 
getMessage()64     public String getMessage() {
65         return Integer.toString(p);
66     }
67 }
68