1 /*
2  * Copyright (c) 1995, 2008, 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.lang;
27 
28 /**
29  * Thrown when a thread is waiting, sleeping, or otherwise occupied,
30  * and the thread is interrupted, either before or during the activity.
31  * Occasionally a method may wish to test whether the current
32  * thread has been interrupted, and if so, to immediately throw
33  * this exception.  The following code can be used to achieve
34  * this effect:
35  * <pre>
36  *  if (Thread.interrupted())  // Clears interrupted status!
37  *      throw new InterruptedException();
38  * </pre>
39  *
40  * @author  Frank Yellin
41  * @see     java.lang.Object#wait()
42  * @see     java.lang.Object#wait(long)
43  * @see     java.lang.Object#wait(long, int)
44  * @see     java.lang.Thread#sleep(long)
45  * @see     java.lang.Thread#interrupt()
46  * @see     java.lang.Thread#interrupted()
47  * @since   JDK1.0
48  */
49 public
50 class InterruptedException extends Exception {
51     private static final long serialVersionUID = 6700697376100628473L;
52 
53     /**
54      * Constructs an <code>InterruptedException</code> with no detail  message.
55      */
InterruptedException()56     public InterruptedException() {
57         super();
58     }
59 
60     /**
61      * Constructs an <code>InterruptedException</code> with the
62      * specified detail message.
63      *
64      * @param   s   the detail message.
65      */
InterruptedException(String s)66     public InterruptedException(String s) {
67         super(s);
68     }
69 }
70