Path: blob/master/src/java.base/share/classes/java/lang/IllegalArgumentException.java
41152 views
/*1* Copyright (c) 1994, 2020, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation. Oracle designates this7* particular file as subject to the "Classpath" exception as provided8* by Oracle in the LICENSE file that accompanied this code.9*10* This code is distributed in the hope that it will be useful, but WITHOUT11* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or12* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License13* version 2 for more details (a copy is included in the LICENSE file that14* accompanied this code).15*16* You should have received a copy of the GNU General Public License version17* 2 along with this work; if not, write to the Free Software Foundation,18* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.19*20* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA21* or visit www.oracle.com if you need additional information or have any22* questions.23*/2425package java.lang;2627/**28* Thrown to indicate that a method has been passed an illegal or29* inappropriate argument.30*31* @since 1.032*/33public class IllegalArgumentException extends RuntimeException {34/**35* Constructs an {@code IllegalArgumentException} with no36* detail message.37*/38public IllegalArgumentException() {39super();40}4142/**43* Constructs an {@code IllegalArgumentException} with the44* specified detail message.45*46* @param s the detail message.47*/48public IllegalArgumentException(String s) {49super(s);50}5152/**53* Constructs a new exception with the specified detail message and54* cause.55*56* <p>Note that the detail message associated with {@code cause} is57* <i>not</i> automatically incorporated in this exception's detail58* message.59*60* @param message the detail message (which is saved for later retrieval61* by the {@link Throwable#getMessage()} method).62* @param cause the cause (which is saved for later retrieval by the63* {@link Throwable#getCause()} method). (A {@code null} value64* is permitted, and indicates that the cause is nonexistent or65* unknown.)66* @since 1.567*/68public IllegalArgumentException(String message, Throwable cause) {69super(message, cause);70}7172/**73* Constructs a new exception with the specified cause and a detail74* message of {@code (cause==null ? null : cause.toString())} (which75* typically contains the class and detail message of {@code cause}).76* This constructor is useful for exceptions that are little more than77* wrappers for other throwables (for example, {@link78* java.security.PrivilegedActionException}).79*80* @param cause the cause (which is saved for later retrieval by the81* {@link Throwable#getCause()} method). (A {@code null} value is82* permitted, and indicates that the cause is nonexistent or83* unknown.)84* @since 1.585*/86public IllegalArgumentException(Throwable cause) {87super(cause);88}8990@java.io.Serial91private static final long serialVersionUID = -5365630128856068164L;92}939495