對於你對根InterruptedException
S的秒的問題,以下類實際上生成一個(即,throw new InterruptedException(...);
)。這是來自我的JDK(OpenJDK 1.8.0.11)。
爲了清楚起見,這些都是在某個地方拋出一個新的InterruptedException
的所有外部類(即不是內部類),包括在內部類中。換句話說,如果類X
具有內部類別X.Y
,並且X.Y
具有引發新InterruptedException
的方法,則它將在此列表中顯示爲X
。它確實不是包括原生生成一個的方法(這就是爲什麼java.lang.Object
沒有出現在這裏)。拋出InterruptedException
的原生方法中只有兩個類別爲java.lang.Object
和java.lang.Thread
。
java.util.concurrent.CyclicBarrier
java.util.concurrent.LinkedTransferQueue
java.util.concurrent.ForkJoinPool
java.util.concurrent.CompletableFuture
java.util.concurrent.locks.AbstractQueuedLongSynchronizer
java.util.concurrent.locks.AbstractQueuedSynchronizer
java.util.concurrent.locks.StampedLock
java.util.concurrent.SynchronousQueue
java.util.concurrent.Phaser
java.util.concurrent.FutureTask
java.util.concurrent.Exchanger
java.util.concurrent.ForkJoinTask
java.lang.InterruptedException
com.sun.corba.se.impl.orbutil.concurrent.DebugMutex
com.sun.corba.se.impl.orbutil.concurrent.Mutex
com.sun.corba.se.impl.orbutil.concurrent.CondVar
com.sun.corba.se.impl.orbutil.concurrent.ReentrantMutex
com.sun.jmx.snmp.daemon.SnmpAdaptorServer
com.sun.jmx.snmp.daemon.CommunicatorServer
下面是從我的JDK類,可以拋出一個,包括人提供在堆棧中的一個較低的水平產生一個完整的清單。
javax.swing.SwingWorker
javax.swing.SwingUtilities
java.nio.file.WatchService
java.nio.channels.AsynchronousChannelGroup
java.awt.MediaTracker
java.awt.image.PixelGrabber
java.awt.EventQueue
java.util.concurrent.Executors
java.util.concurrent.CyclicBarrier
java.util.concurrent.LinkedTransferQueue
java.util.concurrent.ThreadPoolExecutor
java.util.concurrent.DelayQueue
java.util.concurrent.CountDownLatch
java.util.concurrent.AbstractExecutorService
java.util.concurrent.TimeUnit
java.util.concurrent.ForkJoinPool
java.util.concurrent.LinkedBlockingDeque
java.util.concurrent.ScheduledThreadPoolExecutor
java.util.concurrent.CompletableFuture
java.util.concurrent.ExecutorService
java.util.concurrent.ExecutorCompletionService
java.util.concurrent.CompletionService
java.util.concurrent.locks.ReentrantReadWriteLock
java.util.concurrent.locks.AbstractQueuedLongSynchronizer
java.util.concurrent.locks.Lock
java.util.concurrent.locks.AbstractQueuedSynchronizer
java.util.concurrent.locks.Condition
java.util.concurrent.locks.StampedLock
java.util.concurrent.locks.ReentrantLock
java.util.concurrent.SynchronousQueue
java.util.concurrent.ArrayBlockingQueue
java.util.concurrent.LinkedBlockingQueue
java.util.concurrent.TransferQueue
java.util.concurrent.Semaphore
java.util.concurrent.BlockingQueue
java.util.concurrent.Phaser
java.util.concurrent.PriorityBlockingQueue
java.util.concurrent.FutureTask
java.util.concurrent.BlockingDeque
java.util.concurrent.Future
java.util.concurrent.Exchanger
java.util.concurrent.ForkJoinTask
java.lang.UNIXProcess
java.lang.ref.ReferenceQueue
java.lang.Process
java.lang.Object
java.lang.Thread
sun.font.CreatedFontTracker
sun.nio.fs.AbstractWatchService
sun.nio.ch.AsynchronousChannelGroupImpl
sun.nio.ch.PendingFuture
sun.misc.Lock
sun.misc.ConditionLock
sun.misc.Queue
sun.misc.VM
sun.toolsc.SourceClass
sun.awt.X11.XBaseWindow
sun.awt.X11.XSelection
sun.awt.EventQueueDelegate
sun.awt.SunToolkit
sun.awt.im.ExecutableInputMethodManager
sun.awt.shell.ShellFolder
sun.awt.AWTAccessor
sun.applet.AppletPanel
com.sun.xml.internal.ws.encoding.ImageDataContentHandler
com.sun.xml.internal.messaging.saaj.soap.ImageDataContentHandler
com.sun.corba.se.impl.orbutil.concurrent.DebugMutex
com.sun.corba.se.impl.orbutil.concurrent.Sync
com.sun.corba.se.impl.orbutil.concurrent.Mutex
com.sun.corba.se.impl.orbutil.concurrent.CondVar
com.sun.corba.se.impl.orbutil.concurrent.ReentrantMutex
com.sun.corba.se.impl.orbutil.threadpool.WorkQueueImpl
com.sun.org.apache.xml.internal.utils.ThreadControllerWrapper
com.sun.tools.sjavac.server.CompilerPool
com.sun.tools.example.debug.bdi.JDIEventSource
com.sun.tools.example.debug.bdi.ExecutionManager
com.sun.tools.example.debug.bdi.ThreadInfo
com.sun.tools.example.debug.gui.ContextManager
com.sun.tools.jdi.EventQueueImpl
com.sun.jmx.remote.internal.ArrayNotificationBuffer
com.sun.jmx.remote.internal.NotificationBuffer
com.sun.jmx.snmp.daemon.SnmpAdaptorServer
com.sun.jmx.snmp.daemon.CommunicatorServer
com.sun.jndi.ldap.EventQueue
com.sun.jdi.event.EventQueue
com.sun.swing.SwingUtilities3
http://docs.oracle.com/javase/7/docs/api/java/lang/class-use/InterruptedException.html – 2014-10-04 18:17:57
@OliverCharlesworth:挺有意思的,值得一個合適的回答。請張貼它。 – gd1 2014-10-04 18:18:47
@Roam你還沒有接受奧利弗的答案。請接受它。 – UDPLover 2014-10-04 18:33:52