- 所有类 (Java 2 Platform SE 5.0)
- 已过时的 API
- 此 API 文档的组织方式
- 概述 (Java 2 Platform SE 5.0)
- Java 2 Platform 软件包
- 所有软件包的分层结构
- java.awt 接口 ActiveEvent
- java.awt 接口 Adjustable
- java.awt 类 AlphaComposite
- java.awt 类 AWTError
- java.awt 类 AWTEvent
- java.awt 类 AWTEventMulticaster
- java.awt 类 AWTException
- java.awt 类 AWTKeyStroke
- java.awt 类 AWTPermission
- java.awt 类 BasicStroke
- java.awt 类 BorderLayout
- java.awt 类 BufferCapabilities.FlipContents
- java.awt 类 BufferCapabilities
- java.awt 类 Button
- java.awt 类 Canvas
- java.awt 类 CardLayout
- java.awt 类 Checkbox
- java.awt 类 CheckboxGroup
- java.awt 类 CheckboxMenuItem
- java.awt 类 Choice
- java.awt 类 Color
- java.awt 类 Component
- java.awt 类 ComponentOrientation
- java.awt 接口 Composite
- java.awt 接口 CompositeContext
- java.awt 类 Container
- java.awt 类 ContainerOrderFocusTraversalPolicy
- java.awt 类 Cursor
- java.awt 类 DefaultFocusTraversalPolicy
- java.awt 类 DefaultKeyboardFocusManager
- java.awt 类 Dialog
- java.awt 类 Dimension
- java.awt 类 DisplayMode
- java.awt 类 Event
- java.awt 类 EventQueue
- java.awt 类 FileDialog
- java.awt 类 FlowLayout
- java.awt 类 FocusTraversalPolicy
- java.awt 类 Font
- java.awt 类 FontFormatException
- java.awt 类 FontMetrics
- java.awt 类 Frame
- java.awt 类 GradientPaint
- java.awt 类 Graphics
- java.awt 类 Graphics2D
- java.awt 类 GraphicsConfigTemplate
- java.awt 类 GraphicsConfiguration
- java.awt 类 GraphicsDevice
- java.awt 类 GraphicsEnvironment
- java.awt 类 GridBagConstraints
- java.awt 类 GridBagLayout
- java.awt 类 GridLayout
- java.awt 类 HeadlessException
- java.awt 类 IllegalComponentStateException
- java.awt 类 Image
- java.awt 类 ImageCapabilities
- java.awt 类 Insets
- java.awt 接口 ItemSelectable
- java.awt 类 JobAttributes.DefaultSelectionType
- java.awt 类 JobAttributes.DestinationType
- java.awt 类 JobAttributes.DialogType
- java.awt 类 JobAttributes
- java.awt 类 JobAttributes.MultipleDocumentHandlingType
- java.awt 类 JobAttributes.SidesType
- java.awt 类 KeyboardFocusManager
- java.awt 接口 KeyEventDispatcher
- java.awt 接口 KeyEventPostProcessor
- java.awt 类 Label
- java.awt 接口 LayoutManager
- java.awt 接口 LayoutManager2
- java.awt 类 List
- java.awt 类 MediaTracker
- java.awt 类 Menu
- java.awt 类 MenuBar
- java.awt 类 MenuComponent
- java.awt 接口 MenuContainer
- java.awt 类 MenuItem
- java.awt 类 MenuShortcut
- java.awt 类 MouseInfo
- java.awt (Java 2 Platform SE 5.0)
- 软件包 java.awt
- java.awt 类 PageAttributes.ColorType
- java.awt 类 PageAttributes
- java.awt 类 PageAttributes.MediaType
- java.awt 类 PageAttributes.OrientationRequestedType
- java.awt 类 PageAttributes.OriginType
- java.awt 类 PageAttributes.PrintQualityType
- java.awt 接口 Paint
- java.awt 接口 PaintContext
- java.awt 类 Panel
- java.awt 类 Point
- java.awt 类 PointerInfo
- java.awt 类 Polygon
- java.awt 类 PopupMenu
- java.awt 接口 PrintGraphics
- java.awt 类 PrintJob
- java.awt 类 Rectangle
- java.awt 类 RenderingHints
- java.awt 类 RenderingHints.Key
- java.awt 类 Robot
- java.awt 类 Scrollbar
- java.awt 类 ScrollPane
- java.awt 类 ScrollPaneAdjustable
- java.awt 接口 Shape
- java.awt 接口 Stroke
- java.awt 类 SystemColor
- java.awt 类 TextArea
- java.awt 类 TextComponent
- java.awt 类 TextField
- java.awt 类 TexturePaint
- java.awt 类 Toolkit
- java.awt 接口 Transparency
- java.awt 类 Window
- java.awt.color 类 CMMException
- java.awt.color 类 ColorSpace
- java.awt.color 类 ICC_ColorSpace
- java.awt.color 类 ICC_Profile
- java.awt.color 类 ICC_ProfileGray
- java.awt.color 类 ICC_ProfileRGB
- java.awt.color (Java 2 Platform SE 5.0)
- 软件包 java.awt.color
- java.awt.color 类 ProfileDataException
- java.awt.datatransfer 类 Clipboard
- java.awt.datatransfer 接口 ClipboardOwner
- java.awt.datatransfer 类 DataFlavor
- java.awt.datatransfer 类 FlavorEvent
- java.awt.datatransfer 接口 FlavorListener
- java.awt.datatransfer 接口 FlavorMap
- java.awt.datatransfer 接口 FlavorTable
- java.awt.datatransfer 类 MimeTypeParseException
- java.awt.datatransfer (Java 2 Platform SE 5.0)
- 软件包 java.awt.datatransfer
- java.awt.datatransfer 类 StringSelection
- java.awt.datatransfer 类 SystemFlavorMap
- java.awt.datatransfer 接口 Transferable
- java.awt.datatransfer 类 UnsupportedFlavorException
- java.awt.dnd 接口 Autoscroll
- java.awt.dnd 类 DnDConstants
- java.awt.dnd 类 DragGestureEvent
- java.awt.dnd 接口 DragGestureListener
- java.awt.dnd 类 DragGestureRecognizer
- java.awt.dnd 类 DragSource
- java.awt.dnd 类 DragSourceAdapter
- java.awt.dnd 类 DragSourceContext
- java.awt.dnd 类 DragSourceDragEvent
- java.awt.dnd 类 DragSourceDropEvent
- java.awt.dnd 类 DragSourceEvent
- java.awt.dnd 接口 DragSourceListener
- java.awt.dnd 接口 DragSourceMotionListener
- java.awt.dnd 类 DropTarget.DropTargetAutoScroller
- java.awt.dnd 类 DropTarget
- java.awt.dnd 类 DropTargetAdapter
- java.awt.dnd 类 DropTargetContext
- java.awt.dnd 类 DropTargetDragEvent
- java.awt.dnd 类 DropTargetDropEvent
- java.awt.dnd 类 DropTargetEvent
- java.awt.dnd 接口 DropTargetListener
- java.awt.dnd 类 InvalidDnDOperationException
- java.awt.dnd 类 MouseDragGestureRecognizer
- java.awt.dnd (Java 2 Platform SE 5.0)
- 软件包 java.awt.dnd
- java.awt.event 类 ActionEvent
- java.awt.event 接口 ActionListener
- java.awt.event 类 AdjustmentEvent
- java.awt.event 接口 AdjustmentListener
- java.awt.event 接口 AWTEventListener
- java.awt.event 类 AWTEventListenerProxy
- java.awt.event 类 ComponentAdapter
- java.awt.event 类 ComponentEvent
- java.awt.event 接口 ComponentListener
- java.awt.event 类 ContainerAdapter
- java.awt.event 类 ContainerEvent
- java.awt.event 接口 ContainerListener
- java.awt.event 类 FocusAdapter
- java.awt.event 类 FocusEvent
- java.awt.event 接口 FocusListener
- java.awt.event 类 HierarchyBoundsAdapter
- java.awt.event 接口 HierarchyBoundsListener
- java.awt.event 类 HierarchyEvent
- java.awt.event 接口 HierarchyListener
- java.awt.event 类 InputEvent
- java.awt.event 类 InputMethodEvent
- java.awt.event 接口 InputMethodListener
- java.awt.event 类 InvocationEvent
- java.awt.event 类 ItemEvent
- java.awt.event 接口 ItemListener
- java.awt.event 类 KeyAdapter
- java.awt.event 类 KeyEvent
- java.awt.event 接口 KeyListener
- java.awt.event 类 MouseAdapter
- java.awt.event 类 MouseEvent
- java.awt.event 接口 MouseListener
- java.awt.event 类 MouseMotionAdapter
- java.awt.event 接口 MouseMotionListener
- java.awt.event 类 MouseWheelEvent
- java.awt.event 接口 MouseWheelListener
- java.awt.event (Java 2 Platform SE 5.0)
- 软件包 java.awt.event
- java.awt.event 类 PaintEvent
- java.awt.event 类 TextEvent
- java.awt.event 接口 TextListener
- java.awt.event 类 WindowAdapter
- java.awt.event 类 WindowEvent
- java.awt.event 接口 WindowFocusListener
- java.awt.event 接口 WindowListener
- java.awt.event 接口 WindowStateListener
- java.awt.font 类 FontRenderContext
- java.awt.font 类 GlyphJustificationInfo
- java.awt.font 类 GlyphMetrics
- java.awt.font 类 GlyphVector
- java.awt.font 类 GraphicAttribute
- java.awt.font 类 ImageGraphicAttribute
- java.awt.font 类 LineBreakMeasurer
- java.awt.font 类 LineMetrics
- java.awt.font 接口 MultipleMaster
- java.awt.font 类 NumericShaper
- java.awt.font 接口 OpenType
- java.awt.font (Java 2 Platform SE 5.0)
- 软件包 java.awt.font
- java.awt.font 类 ShapeGraphicAttribute
- java.awt.font 类 TextAttribute
- java.awt.font 类 TextHitInfo
- java.awt.font 类 TextLayout.CaretPolicy
- java.awt.font 类 TextLayout
- java.awt.font 类 TextMeasurer
- java.awt.font 类 TransformAttribute
- java.awt.geom 类 AffineTransform
- java.awt.geom 类 Arc2D.Double
- java.awt.geom 类 Arc2D.Float
- java.awt.geom 类 Arc2D
- java.awt.geom 类 Area
- java.awt.geom 类 CubicCurve2D.Double
- java.awt.geom 类 CubicCurve2D.Float
- java.awt.geom 类 CubicCurve2D
- java.awt.geom 类 Dimension2D
- java.awt.geom 类 Ellipse2D.Double
- java.awt.geom 类 Ellipse2D.Float
- java.awt.geom 类 Ellipse2D
- java.awt.geom 类 FlatteningPathIterator
- java.awt.geom 类 GeneralPath
- java.awt.geom 类 IllegalPathStateException
- java.awt.geom 类 Line2D.Double
- java.awt.geom 类 Line2D.Float
- java.awt.geom 类 Line2D
- java.awt.geom 类 NoninvertibleTransformException
- java.awt.geom (Java 2 Platform SE 5.0)
- 软件包 java.awt.geom
- java.awt.geom 接口 PathIterator
- java.awt.geom 类 Point2D.Double
- java.awt.geom 类 Point2D.Float
- java.awt.geom 类 Point2D
- java.awt.geom 类 QuadCurve2D.Double
- java.awt.geom 类 QuadCurve2D.Float
- java.awt.geom 类 QuadCurve2D
- java.awt.geom 类 Rectangle2D.Double
- java.awt.geom 类 Rectangle2D.Float
- java.awt.geom 类 Rectangle2D
- java.awt.geom 类 RectangularShape
- java.awt.geom 类 RoundRectangle2D.Double
- java.awt.geom 类 RoundRectangle2D.Float
- java.awt.geom 类 RoundRectangle2D
- java.awt.im 类 InputContext
- java.awt.im 类 InputMethodHighlight
- java.awt.im 接口 InputMethodRequests
- java.awt.im 类 InputSubset
- java.awt.im (Java 2 Platform SE 5.0)
- 软件包 java.awt.im
- java.awt.im.spi 接口 InputMethod
- java.awt.im.spi 接口 InputMethodContext
- java.awt.im.spi 接口 InputMethodDescriptor
- java.awt.im.spi (Java 2 Platform SE 5.0)
- 软件包 java.awt.im.spi
- java.awt.image 类 AffineTransformOp
- java.awt.image 类 AreaAveragingScaleFilter
- java.awt.image 类 BandCombineOp
- java.awt.image 类 BandedSampleModel
- java.awt.image 类 BufferedImage
- java.awt.image 类 BufferedImageFilter
- java.awt.image 接口 BufferedImageOp
- java.awt.image 类 BufferStrategy
- java.awt.image 类 ByteLookupTable
- java.awt.image 类 ColorConvertOp
- java.awt.image 类 ColorModel
- java.awt.image 类 ComponentColorModel
- java.awt.image 类 ComponentSampleModel
- java.awt.image 类 ConvolveOp
- java.awt.image 类 CropImageFilter
- java.awt.image 类 DataBuffer
- java.awt.image 类 DataBufferByte
- java.awt.image 类 DataBufferDouble
- java.awt.image 类 DataBufferFloat
- java.awt.image 类 DataBufferInt
- java.awt.image 类 DataBufferShort
- java.awt.image 类 DataBufferUShort
- java.awt.image 类 DirectColorModel
- java.awt.image 类 FilteredImageSource
- java.awt.image 接口 ImageConsumer
- java.awt.image 类 ImageFilter
- java.awt.image 接口 ImageObserver
- java.awt.image 接口 ImageProducer
- java.awt.image 类 ImagingOpException
- java.awt.image 类 IndexColorModel
- java.awt.image 类 Kernel
- java.awt.image 类 LookupOp
- java.awt.image 类 LookupTable
- java.awt.image 类 MemoryImageSource
- java.awt.image 类 MultiPixelPackedSampleModel
- java.awt.image (Java 2 Platform SE 5.0)
- 软件包 java.awt.image
- java.awt.image 类 PackedColorModel
- java.awt.image 类 PixelGrabber
- java.awt.image 类 PixelInterleavedSampleModel
- java.awt.image 类 Raster
- java.awt.image 类 RasterFormatException
- java.awt.image 接口 RasterOp
- java.awt.image 接口 RenderedImage
- java.awt.image 类 ReplicateScaleFilter
- java.awt.image 类 RescaleOp
- java.awt.image 类 RGBImageFilter
- java.awt.image 类 SampleModel
- java.awt.image 类 ShortLookupTable
- java.awt.image 类 SinglePixelPackedSampleModel
- java.awt.image 接口 TileObserver
- java.awt.image 类 VolatileImage
- java.awt.image 类 WritableRaster
- java.awt.image 接口 WritableRenderedImage
- java.awt.image.renderable 接口 ContextualRenderedImageFactory
- java.awt.image.renderable (Java 2 Platform SE 5.0)
- 软件包 java.awt.image.renderable
- java.awt.image.renderable 类 ParameterBlock
- java.awt.image.renderable 接口 RenderableImage
- java.awt.image.renderable 类 RenderableImageOp
- java.awt.image.renderable 类 RenderableImageProducer
- java.awt.image.renderable 类 RenderContext
- java.awt.image.renderable 接口 RenderedImageFactory
- java.awt.print 类 Book
- java.awt.print (Java 2 Platform SE 5.0)
- 软件包 java.awt.print
- java.awt.print 接口 Pageable
- java.awt.print 类 PageFormat
- java.awt.print 类 Paper
- java.awt.print 接口 Printable
- java.awt.print 类 PrinterAbortException
- java.awt.print 类 PrinterException
- java.awt.print 接口 PrinterGraphics
- java.awt.print 类 PrinterIOException
- java.awt.print 类 PrinterJob
- java.io 类 BufferedInputStream
- java.io 类 BufferedOutputStream
- java.io 类 BufferedReader
- java.io 类 BufferedWriter
- java.io 类 ByteArrayInputStream
- java.io 类 ByteArrayOutputStream
- java.io 类 CharArrayReader
- java.io 类 CharArrayWriter
- java.io 类 CharConversionException
- java.io 接口 Closeable
- java.io 接口 DataInput
- java.io 类 DataInputStream
- java.io 接口 DataOutput
- java.io 类 DataOutputStream
- java.io 类 EOFException
- java.io 接口 Externalizable
- java.io 类 File
- java.io 类 FileDescriptor
- java.io 接口 FileFilter
- java.io 类 FileInputStream
- java.io 接口 FilenameFilter
- java.io 类 FileNotFoundException
- java.io 类 FileOutputStream
- java.io 类 FilePermission
- java.io 类 FileReader
- java.io 类 FileWriter
- java.io 类 FilterInputStream
- java.io 类 FilterOutputStream
- java.io 类 FilterReader
- java.io 类 FilterWriter
- java.io 接口 Flushable
- java.io 类 InputStream
- java.io 类 InputStreamReader
- java.io 类 InterruptedIOException
- java.io 类 InvalidClassException
- java.io 类 InvalidObjectException
- java.io 类 IOException
- java.io 类 LineNumberInputStream
- java.io 类 LineNumberReader
- java.io 类 NotActiveException
- java.io 类 NotSerializableException
- java.io 接口 ObjectInput
- java.io 类 ObjectInputStream.GetField
- java.io 类 ObjectInputStream
- java.io 接口 ObjectInputValidation
- java.io 接口 ObjectOutput
- java.io 类 ObjectOutputStream
- java.io 类 ObjectOutputStream.PutField
- java.io 类 ObjectStreamClass
- java.io 接口 ObjectStreamConstants
- java.io 类 ObjectStreamException
- java.io 类 ObjectStreamField
- java.io 类 OptionalDataException
- java.io 类 OutputStream
- java.io 类 OutputStreamWriter
- java.io (Java 2 Platform SE 5.0)
- 软件包 java.io
- java.io 类 PipedInputStream
- java.io 类 PipedOutputStream
- java.io 类 PipedReader
- java.io 类 PipedWriter
- java.io 类 PrintStream
- java.io 类 PrintWriter
- java.io 类 PushbackInputStream
- java.io 类 PushbackReader
- java.io 类 RandomAccessFile
- java.io 类 Reader
- java.io 类 SequenceInputStream
- java.io 接口 Serializable
- java.io 类 SerializablePermission
- java.io 类 StreamCorruptedException
- java.io 类 StreamTokenizer
- java.io 类 StringBufferInputStream
- java.io 类 StringReader
- java.io 类 StringWriter
- java.io 类 SyncFailedException
- java.io 类 UnsupportedEncodingException
- java.io 类 UTFDataFormatException
- java.io 类 WriteAbortedException
- java.io 类 Writer
- java.lang 类 AbstractMethodError
- java.lang 接口 Appendable
- java.lang 类 ArithmeticException
- java.lang 类 ArrayIndexOutOfBoundsException
- java.lang 类 ArrayStoreException
- java.lang 类 AssertionError
- java.lang 类 Boolean
- java.lang 类 Byte
- java.lang 类 Character
- java.lang 类 Character.Subset
- java.lang 类 Character.UnicodeBlock
- java.lang 接口 CharSequence
- java.lang 类 Class<T>
- java.lang 类 ClassCastException
- java.lang 类 ClassCircularityError
- java.lang 类 ClassFormatError
- java.lang 类 ClassLoader
- java.lang 类 ClassNotFoundException
- java.lang 接口 Cloneable
- java.lang 类 CloneNotSupportedException
- java.lang 接口 Comparable<T>
- java.lang 类 Compiler
- java.lang 注释类型 Deprecated
- java.lang 类 Double
- java.lang 类 Enum<E extends Enum<E>>
- java.lang 类 EnumConstantNotPresentException
- java.lang 类 Error
- java.lang 类 Exception
- java.lang 类 ExceptionInInitializerError
- java.lang 类 Float
- java.lang 类 IllegalAccessError
- java.lang 类 IllegalAccessException
- java.lang 类 IllegalArgumentException
- java.lang 类 IllegalMonitorStateException
- java.lang 类 IllegalStateException
- java.lang 类 IllegalThreadStateException
- java.lang 类 IncompatibleClassChangeError
- java.lang 类 IndexOutOfBoundsException
- java.lang 类 InheritableThreadLocal<T>
- java.lang 类 InstantiationError
- java.lang 类 InstantiationException
- java.lang 类 Integer
- java.lang 类 InternalError
- java.lang 类 InterruptedException
- java.lang 接口 Iterable<T>
- java.lang 类 LinkageError
- java.lang 类 Long
- java.lang 类 Math
- java.lang 类 NegativeArraySizeException
- java.lang 类 NoClassDefFoundError
- java.lang 类 NoSuchFieldError
- java.lang 类 NoSuchFieldException
- java.lang 类 NoSuchMethodError
- java.lang 类 NoSuchMethodException
- java.lang 类 NullPointerException
- java.lang 类 Number
- java.lang 类 NumberFormatException
- java.lang 类 Object
- java.lang 类 OutOfMemoryError
- java.lang 注释类型 Override
- java.lang (Java 2 Platform SE 5.0)
- 软件包 java.lang
- java.lang 类 Package
- java.lang 类 Process
- java.lang 类 ProcessBuilder
- java.lang 接口 Readable
- java.lang 接口 Runnable
- java.lang 类 Runtime
- java.lang 类 RuntimeException
- java.lang 类 RuntimePermission
- java.lang 类 SecurityException
- java.lang 类 SecurityManager
- java.lang 类 Short
- java.lang 类 StackOverflowError
- java.lang 类 StackTraceElement
- java.lang 类 StrictMath
- java.lang 类 String
- java.lang 类 StringBuffer
- java.lang 类 StringBuilder
- java.lang 类 StringIndexOutOfBoundsException
- java.lang 注释类型 SuppressWarnings
- java.lang 类 System
- java.lang 类 Thread
- java.lang 枚举 Thread.State
- java.lang 接口 Thread.UncaughtExceptionHandler
- java.lang 类 ThreadDeath
- java.lang 类 ThreadGroup
- java.lang 类 ThreadLocal<T>
- java.lang 类 Throwable
- java.lang 类 TypeNotPresentException
- java.lang 类 UnknownError
- java.lang 类 UnsatisfiedLinkError
- java.lang 类 UnsupportedClassVersionError
- java.lang 类 UnsupportedOperationException
- java.lang 类 VerifyError
- java.lang 类 VirtualMachineError
- java.lang 类 Void
- java.lang.annotation 接口 Annotation
- java.lang.annotation 类 AnnotationFormatError
- java.lang.annotation 类 AnnotationTypeMismatchException
- java.lang.annotation 注释类型 Documented
- java.lang.annotation 枚举 ElementType
- java.lang.annotation 类 IncompleteAnnotationException
- java.lang.annotation 注释类型 Inherited
- java.lang.annotation (Java 2 Platform SE 5.0)
- 软件包 java.lang.annotation
- java.lang.annotation 注释类型 Retention
- java.lang.annotation 枚举 RetentionPolicy
- java.lang.annotation 注释类型 Target
- java.lang.instrument 类 ClassDefinition
- java.lang.instrument 接口 ClassFileTransformer
- java.lang.instrument 类 IllegalClassFormatException
- java.lang.instrument 接口 Instrumentation
- java.lang.instrument (Java 2 Platform SE 5.0)
- 软件包 java.lang.instrument
- java.lang.instrument 类 UnmodifiableClassException
- java.lang.management 接口 ClassLoadingMXBean
- java.lang.management 接口 CompilationMXBean
- java.lang.management 接口 GarbageCollectorMXBean
- java.lang.management 类 ManagementFactory
- java.lang.management 类 ManagementPermission
- java.lang.management 接口 MemoryManagerMXBean
- java.lang.management 接口 MemoryMXBean
- java.lang.management 类 MemoryNotificationInfo
- java.lang.management 接口 MemoryPoolMXBean
- java.lang.management 枚举 MemoryType
- java.lang.management 类 MemoryUsage
- java.lang.management 接口 OperatingSystemMXBean
- java.lang.management (Java 2 Platform SE 5.0)
- 软件包 java.lang.management
- java.lang.management 接口 RuntimeMXBean
- java.lang.management 类 ThreadInfo
- java.lang.management 接口 ThreadMXBean
- java.lang.ref (Java 2 Platform SE 5.0)
- 软件包 java.lang.ref
- java.lang.ref 类 PhantomReference<T>
- java.lang.ref 类 Reference<T>
- java.lang.ref 类 ReferenceQueue<T>
- java.lang.ref 类 SoftReference<T>
- java.lang.ref 类 WeakReference<T>
- java.lang.reflect 类 AccessibleObject
- java.lang.reflect 接口 AnnotatedElement
- java.lang.reflect 类 Array
- java.lang.reflect 类 Constructor<T>
- java.lang.reflect 类 Field
- java.lang.reflect 接口 GenericArrayType
- java.lang.reflect 接口 GenericDeclaration
- java.lang.reflect 类 GenericSignatureFormatError
- java.lang.reflect 接口 InvocationHandler
- java.lang.reflect 类 InvocationTargetException
- java.lang.reflect 类 MalformedParameterizedTypeException
- java.lang.reflect 接口 Member
- java.lang.reflect 类 Method
- java.lang.reflect 类 Modifier
- java.lang.reflect (Java 2 Platform SE 5.0)
- 软件包 java.lang.reflect
- java.lang.reflect 接口 ParameterizedType
- java.lang.reflect 类 Proxy
- java.lang.reflect 类 ReflectPermission
- java.lang.reflect 接口 Type
- java.lang.reflect 接口 TypeVariable<D extends GenericDeclaration>
- java.lang.reflect 类 UndeclaredThrowableException
- java.lang.reflect 接口 WildcardType
- java.text 类 Annotation
- java.text 类 AttributedCharacterIterator.Attribute
- java.text 接口 AttributedCharacterIterator
- java.text 类 AttributedString
- java.text 类 Bidi
- java.text 类 BreakIterator
- java.text 接口 CharacterIterator
- java.text 类 ChoiceFormat
- java.text 类 CollationElementIterator
- java.text 类 CollationKey
- java.text 类 Collator
- java.text 类 DateFormat.Field
- java.text 类 DateFormat
- java.text 类 DateFormatSymbols
- java.text 类 DecimalFormat
- java.text 类 DecimalFormatSymbols
- java.text 类 FieldPosition
- java.text 类 Format.Field
- java.text 类 Format
- java.text 类 MessageFormat.Field
- java.text 类 MessageFormat
- java.text 类 NumberFormat.Field
- java.text 类 NumberFormat
- java.text (Java 2 Platform SE 5.0)
- 软件包 java.text
- java.text 类 ParseException
- java.text 类 ParsePosition
- java.text 类 RuleBasedCollator
- java.text 类 SimpleDateFormat
- java.text 类 StringCharacterIterator
- java.util 类 AbstractCollection<E>
- java.util 类 AbstractList<E>
- java.util 类 AbstractMap<K,V>
- java.util 类 AbstractQueue<E>
- java.util 类 AbstractSequentialList<E>
- java.util 类 AbstractSet<E>
- java.util 类 ArrayList<E>
- java.util 类 Arrays
- java.util 类 BitSet
- java.util 类 Calendar
- java.util 接口 Collection<E>
- java.util 类 Collections
- java.util 接口 Comparator<T>
- java.util 类 ConcurrentModificationException
- java.util 类 Currency
- java.util 类 Date
- java.util 类 Dictionary<K,V>
- java.util 类 DuplicateFormatFlagsException
- java.util 类 EmptyStackException
- java.util 接口 Enumeration<E>
- java.util 类 EnumMap<K extends Enum<K>,V>
- java.util 类 EnumSet<E extends Enum<E>>
- java.util 接口 EventListener
- java.util 类 EventListenerProxy
- java.util 类 EventObject
- java.util 类 FormatFlagsConversionMismatchException
- java.util 接口 Formattable
- java.util 类 FormattableFlags
- java.util 枚举 Formatter.BigDecimalLayoutForm
- java.util 类 Formatter
- java.util 类 FormatterClosedException
- java.util 类 GregorianCalendar
- java.util 类 HashMap<K,V>
- java.util 类 HashSet<E>
- java.util 类 Hashtable<K,V>
- java.util 类 IdentityHashMap<K,V>
- java.util 类 IllegalFormatCodePointException
- java.util 类 IllegalFormatConversionException
- java.util 类 IllegalFormatException
- java.util 类 IllegalFormatFlagsException
- java.util 类 IllegalFormatPrecisionException
- java.util 类 IllegalFormatWidthException
- java.util 类 InputMismatchException
- java.util 类 InvalidPropertiesFormatException
- java.util 接口 Iterator<E>
- java.util 类 LinkedHashMap<K,V>
- java.util 类 LinkedHashSet<E>
- java.util 类 LinkedList<E>
- java.util 接口 List<E>
- java.util 接口 ListIterator<E>
- java.util 类 ListResourceBundle
- java.util 类 Locale
- java.util 接口 Map.Entry<K,V>
- java.util 接口 Map<K,V>
- java.util 类 MissingFormatArgumentException
- java.util 类 MissingFormatWidthException
- java.util 类 MissingResourceException
- java.util 类 NoSuchElementException
- java.util 类 Observable
- java.util 接口 Observer
- java.util (Java 2 Platform SE 5.0)
- 软件包 java.util
- java.util 类 PriorityQueue<E>
- java.util 类 Properties
- java.util 类 PropertyPermission
- java.util 类 PropertyResourceBundle
- java.util 接口 Queue<E>
- java.util 类 Random
- java.util 接口 RandomAccess
- java.util 类 ResourceBundle
- java.util 类 Scanner
- java.util 接口 Set<E>
- java.util 类 SimpleTimeZone
- java.util 接口 SortedMap<K,V>
- java.util 接口 SortedSet<E>
- java.util 类 Stack<E>
- java.util 类 StringTokenizer
- java.util 类 Timer
- java.util 类 TimerTask
- java.util 类 TimeZone
- java.util 类 TooManyListenersException
- java.util 类 TreeMap<K,V>
- java.util 类 TreeSet<E>
- java.util 类 UnknownFormatConversionException
- java.util 类 UnknownFormatFlagsException
- java.util 类 UUID
- java.util 类 Vector<E>
- java.util 类 WeakHashMap<K,V>
- java.util.concurrent 类 AbstractExecutorService
- java.util.concurrent 类 ArrayBlockingQueue<E>
- java.util.concurrent 接口 BlockingQueue<E>
- java.util.concurrent 类 BrokenBarrierException
- java.util.concurrent 接口 Callable<V>
- java.util.concurrent 类 CancellationException
- java.util.concurrent 接口 CompletionService<V>
- java.util.concurrent 类 ConcurrentHashMap<K,V>
- java.util.concurrent 类 ConcurrentLinkedQueue<E>
- java.util.concurrent 接口 ConcurrentMap<K,V>
- java.util.concurrent 类 CopyOnWriteArrayList<E>
- java.util.concurrent 类 CopyOnWriteArraySet<E>
- java.util.concurrent 类 CountDownLatch
- java.util.concurrent 类 CyclicBarrier
- java.util.concurrent 接口 Delayed
- java.util.concurrent 类 DelayQueue<E extends Delayed>
- java.util.concurrent 类 Exchanger<V>
- java.util.concurrent 类 ExecutionException
- java.util.concurrent 接口 Executor
- java.util.concurrent 类 ExecutorCompletionService<V>
- java.util.concurrent 类 Executors
- java.util.concurrent 接口 ExecutorService
- java.util.concurrent 接口 Future<V>
- java.util.concurrent 类 FutureTask<V>
- java.util.concurrent 类 LinkedBlockingQueue<E>
- java.util.concurrent (Java 2 Platform SE 5.0)
- 软件包 java.util.concurrent
- java.util.concurrent 类 PriorityBlockingQueue<E>
- java.util.concurrent 类 RejectedExecutionException
- java.util.concurrent 接口 RejectedExecutionHandler
- java.util.concurrent 接口 ScheduledExecutorService
- java.util.concurrent 接口 ScheduledFuture<V>
- java.util.concurrent 类 ScheduledThreadPoolExecutor
- java.util.concurrent 类 Semaphore
- java.util.concurrent 类 SynchronousQueue<E>
- java.util.concurrent 接口 ThreadFactory
- java.util.concurrent 类 ThreadPoolExecutor.AbortPolicy
- java.util.concurrent 类 ThreadPoolExecutor.CallerRunsPolicy
- java.util.concurrent 类 ThreadPoolExecutor.DiscardOldestPolicy
- java.util.concurrent 类 ThreadPoolExecutor.DiscardPolicy
- java.util.concurrent 类 ThreadPoolExecutor
- java.util.concurrent 类 TimeoutException
- java.util.concurrent 枚举 TimeUnit
- java.util.concurrent.atomic 类 AtomicBoolean
- java.util.concurrent.atomic 类 AtomicInteger
- java.util.concurrent.atomic 类 AtomicIntegerArray
- java.util.concurrent.atomic 类 AtomicIntegerFieldUpdater<T>
- java.util.concurrent.atomic 类 AtomicLong
- java.util.concurrent.atomic 类 AtomicLongArray
- java.util.concurrent.atomic 类 AtomicLongFieldUpdater<T>
- java.util.concurrent.atomic 类 AtomicMarkableReference<V>
- java.util.concurrent.atomic 类 AtomicReference<V>
- java.util.concurrent.atomic 类 AtomicReferenceArray<E>
- java.util.concurrent.atomic 类 AtomicReferenceFieldUpdater<T,V>
- java.util.concurrent.atomic 类 AtomicStampedReference<V>
- java.util.concurrent.atomic (Java 2 Platform SE 5.0)
- 软件包 java.util.concurrent.atomic
- java.util.concurrent.locks 类 AbstractQueuedSynchronizer
- java.util.concurrent.locks 接口 Condition
- java.util.concurrent.locks 接口 Lock
- java.util.concurrent.locks 类 LockSupport
- java.util.concurrent.locks (Java 2 Platform SE 5.0)
- 软件包 java.util.concurrent.locks
- java.util.concurrent.locks 接口 ReadWriteLock
- java.util.concurrent.locks 类 ReentrantLock
- java.util.concurrent.locks 类 ReentrantReadWriteLock
- java.util.concurrent.locks 类 ReentrantReadWriteLock.ReadLock
- java.util.concurrent.locks 类 ReentrantReadWriteLock.WriteLock
- java.util.jar 类 Attributes
- java.util.jar 类 Attributes.Name
- java.util.jar 类 JarEntry
- java.util.jar 类 JarException
- java.util.jar 类 JarFile
- java.util.jar 类 JarInputStream
- java.util.jar 类 JarOutputStream
- java.util.jar 类 Manifest
- java.util.jar 类 Pack200
- java.util.jar 接口 Pack200.Packer
- java.util.jar 接口 Pack200.Unpacker
- java.util.jar (Java 2 Platform SE 5.0)
- 软件包 java.util.jar
- java.util.logging 类 ConsoleHandler
- java.util.logging 类 ErrorManager
- java.util.logging 类 FileHandler
- java.util.logging 接口 Filter
- java.util.logging 类 Formatter
- java.util.logging 类 Handler
- java.util.logging 类 Level
- java.util.logging 类 Logger
- java.util.logging 接口 LoggingMXBean
- java.util.logging 类 LoggingPermission
- java.util.logging 类 LogManager
- java.util.logging 类 LogRecord
- java.util.logging 类 MemoryHandler
- java.util.logging (Java 2 Platform SE 5.0)
- 软件包 java.util.logging
- java.util.logging 类 SimpleFormatter
- java.util.logging 类 SocketHandler
- java.util.logging 类 StreamHandler
- java.util.logging 类 XMLFormatter
- java.util.prefs 类 AbstractPreferences
- java.util.prefs 类 BackingStoreException
- java.util.prefs 类 InvalidPreferencesFormatException
- java.util.prefs 类 NodeChangeEvent
- java.util.prefs 接口 NodeChangeListener
- java.util.prefs (Java 2 Platform SE 5.0)
- 软件包 java.util.prefs
- java.util.prefs 类 PreferenceChangeEvent
- java.util.prefs 接口 PreferenceChangeListener
- java.util.prefs 类 Preferences
- java.util.prefs 接口 PreferencesFactory
- java.util.regex 类 Matcher
- java.util.regex 接口 MatchResult
- java.util.regex (Java 2 Platform SE 5.0)
- 软件包 java.util.regex
- java.util.regex 类 Pattern
- java.util.regex 类 PatternSyntaxException
- java.util.zip 类 Adler32
- java.util.zip 类 CheckedInputStream
- java.util.zip 类 CheckedOutputStream
- java.util.zip 接口 Checksum
- java.util.zip 类 CRC32
- java.util.zip 类 DataFormatException
- java.util.zip 类 Deflater
- java.util.zip 类 DeflaterOutputStream
- java.util.zip 类 GZIPInputStream
- java.util.zip 类 GZIPOutputStream
- java.util.zip 类 Inflater
- java.util.zip 类 InflaterInputStream
- java.util.zip (Java 2 Platform SE 5.0)
- 软件包 java.util.zip
- java.util.zip 类 ZipEntry
- java.util.zip 类 ZipException
- java.util.zip 类 ZipFile
- java.util.zip 类 ZipInputStream
- java.util.zip 类 ZipOutputStream
java.lang 类 ClassLoader
java.lang.Object └java.lang.ClassLoader
public abstract class ClassLoader
- extends Object
类加载器是负责加载类的对象。 ClassLoader
类是一个抽象类。如果给定类的二进制名称,那么类加载器会试图查找或生成构成类定义的数据。一般策略是将名称转换为某个文件名,然后从文件系统读取该名称的“类文件”。
每个
对象都包含一个对定义它的 Class
ClassLoader
的 引用
。
数组类的 Class
对象不是由类加载器创建的,而是由 Java 运行时根据需要自动创建。数组类的类加载器由 Class.getClassLoader()
返回,该加载器与其元素类型的类加载器是相同的;如果该元素类型是基本类型,则该数组类没有类加载器。
应用程序需要实现 ClassLoader
的子类,以扩展 Java 虚拟机动态加载类的方式。
类加载器通常由安全管理器使用,用于指示安全域。
ClassLoader
类使用委托模型来搜索类和资源。每个 ClassLoader
实例都有一个相关的父类加载器。需要查找类或资源时, ClassLoader
实例会在试图亲自查找类或资源之前,将搜索类或资源的任务委托给其父类加载器。虚拟机的内置类加载器(称为 "bootstrap class loader")本身没有父类加载器,但是可以将它用作 ClassLoader
实例的父类加载器。
通常情况下,Java 虚拟机以与平台有关的方式,从本地文件系统中加载类。例如,在 UNIX 系统中,虚拟机从 CLASSPATH
环境变量定义的目录中加载类。
然而,有些类可能并非源自一个文件;它们可能源自其他来源(如网络),也可能是由应用程序构造的。
方法将一个字节数组转换为 defineClass
Class
类的实例。这种新定义的类的实例可以使用
来创建。Class.newInstance
类加载器所创建对象的方法和构造方法可以引用其他类。为了确定引用的类,Java 虚拟机将调用最初创建该类的类加载器的
方法。loadClass
例如,应用程序可以创建一个网络类加载器,从服务器中下载类文件。示例代码如下所示:
ClassLoader loader= new NetworkClassLoader(host,port); Object main= loader.loadClass("Main", true).newInstance(); ...
网络类加载器子类必须定义方法
和 findClass
loadClassData
,以实现从网络加载类。下载组成该类的字节后,它应该使用方法
来创建类实例。示例实现如下:defineClass
class NetworkClassLoader extends ClassLoader { String host; int port; public Class findClass(String name) { byte[] b = loadClassData(name); return defineClass(name, b, 0, b.length); } private byte[] loadClassData(String name) { // load the class data from the connection ... } }
二进制名称
按照《Java Language Specification》的定义,任何作为 String
类型参数传递给 ClassLoader
中方法的类名称都必须是一个二进制名称。
有效类名称的示例包括:
"java.lang.String" "javax.swing.JSpinner$DefaultEditor" "java.security.KeyStore$Builder$FileBuilder$1" "java.net.URLClassLoader$3$1"
- 从以下版本开始:
- 1.0
- 另请参见:
resolveClass(Class)
构造方法摘要 | |
---|---|
protected | ClassLoader() 使用方法 返回的 ClassLoader 创建一个新的类加载器,将该加载器作为父类加载器。 |
protected | ClassLoader(ClassLoaderparent) 使用指定的、用于委托操作的父类加载器创建新的类加载器。 |
方法摘要 | |
---|---|
void | clearAssertionStatus() 将此类加载器的默认断言状态设置为 false ,并放弃与此类加载器关联的所有默认包或类断言状态设置。 |
protected Class<?> | defineClass(byte[]b, intoff, intlen) 已过时。由 defineClass(String, byte[], int, int) 取代 |
protected Class<?> | defineClass(Stringname, byte[]b, intoff, intlen) 将一个字节数组转换为 Class 类的实例。 |
protected Class<?> | defineClass(Stringname, byte[]b, intoff, intlen, java.security.ProtectionDomainprotectionDomain) 使用可选的 ProtectionDomain 将一个字节数组转换为 Class 类的实例。 |
protected Class<?> | defineClass(Stringname, java.nio.ByteBufferb, java.security.ProtectionDomainprotectionDomain) 使用可选的 ProtectionDomain 将 转换为 Class 类的实例。 |
protected Package | definePackage(Stringname, StringspecTitle, StringspecVersion, StringspecVendor, StringimplTitle, StringimplVersion, StringimplVendor, java.net.URLsealBase) 使用此 ClassLoader 中的名称来定义包。 |
protected Class<?> | findClass(Stringname) 使用指定的二进制名称查找类。 |
protected String | findLibrary(Stringlibname) 返回本机库的绝对路径名。 |
protected Class<?> | findLoadedClass(Stringname) 如果 Java 虚拟机已将此加载器记录为具有给定二进制名称的某个类的启动加载器,则返回该二进制名称的类。 |
protected java.net.URL | findResource(Stringname) 查找具有给定名称的资源。 |
protected Enumeration<java.net.URL> | findResources(Stringname) 返回表示所有具有给定名称的资源的 对象的枚举。 |
protected Class<?> | findSystemClass(Stringname) 查找具有指定的二进制名称的类,必要时加载它。 |
protected Package | getPackage(Stringname) 返回由此类加载器或其任何祖先所定义的 Package 。 |
protected Package[] | getPackages() 返回此类加载器及其祖先所定义的所有 Package 。 |
ClassLoader | getParent() 返回委托的父类加载器。 |
java.net.URL | getResource(Stringname) 查找具有给定名称的资源。 |
InputStream | getResourceAsStream(Stringname) 返回读取指定资源的输入流。 |
Enumeration<java.net.URL> | getResources(Stringname) 查找所有给定名称的资源。 |
staticClassLoader | getSystemClassLoader() 返回委托的系统类加载器。 |
staticjava.net.URL | getSystemResource(Stringname) 从用来加载类的搜索路径中查找具有指定名称的资源。 |
staticInputStream | getSystemResourceAsStream(Stringname) 从用来加载类的搜索路径打开具有指定名称的资源,以读取该资源。 |
staticEnumeration<java.net.URL> | getSystemResources(Stringname) 从用来加载类的搜索路径中查找所有具有指定名称的资源。 |
Class<?> | loadClass(Stringname) 使用指定的二进制名称来加载类。 |
protected Class<?> | loadClass(Stringname, booleanresolve) 使用指定的二进制名称来加载类。 |
protected void | resolveClass(Class<?>c) 链接指定的类。 |
void | setClassAssertionStatus(StringclassName, booleanenabled) 设置在此类加载器及其包含的嵌套类中指定的最高层类所需的断言状态。 |
void | setDefaultAssertionStatus(booleanenabled) 设置此类加载器的默认断言状态。 |
void | setPackageAssertionStatus(StringpackageName, booleanenabled) 为指定包设置默认断言状态。 |
protected void | setSigners(Class<?>c, Object[]signers) 设置类的签署者。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息
ClassLoader
protected ClassLoader(ClassLoaderparent)
- 使用指定的、用于委托操作的父类加载器创建新的类加载器。
如果存在安全管理器,则调用其
方法。这可能导致安全性异常。checkCreateClassLoader
- 参数:
parent
- 父类加载器- 抛出:
SecurityException
- 如果存在安全管理器并且其checkCreateClassLoader
方法不允许创建新的类加载器。- 从以下版本开始:
- 1.2
ClassLoader
protected ClassLoader()
- 使用方法
返回的getSystemClassLoader()
ClassLoader
创建一个新的类加载器,将该加载器作为父类加载器。如果存在安全管理器,则调用其
方法。这可能导致安全性异常。checkCreateClassLoader
- 抛出:
SecurityException
- 如果存在安全管理器并且其checkCreateClassLoader
方法不允许创建新的类加载器。
方法详细信息
loadClass
public Class<?> loadClass(Stringname) throws ClassNotFoundException
- 使用指定的二进制名称来加载类。此方法使用与
loadClass(String, boolean)
方法相同的方式搜索类。Java 虚拟机调用它来分析类引用。调用此方法等效于调用
。loadClass(name, false)
- 参数:
name
- 类的二进制名称- 返回:
- 得到的
Class
对象 - 抛出:
ClassNotFoundException
- 如果没有找到类
loadClass
protected Class<?> loadClass(Stringname, booleanresolve) throws ClassNotFoundException
- 使用指定的二进制名称来加载类。此方法的默认实现将按以下顺序搜索类:
调用
findLoadedClass(String)
来检查是否已经加载类。在父类加载器上调用
方法。如果父类加载器为loadClass
null
,则使用虚拟机的内置类加载器。调用
findClass(String)
方法查找类。
如果使用上述步骤找到类,并且
resolve
标志为真,则此方法将在得到的Class
对象上调用resolveClass(Class)
方法。鼓励用
ClassLoader
的子类重写findClass(String)
,而不是使用此方法。 - 参数:
name
- 类的二进制名称resolve
- 如果该参数为true
,则分析这个类- 返回:
- 得到的
Class
对象 - 抛出:
ClassNotFoundException
- 如果无法找到类
findClass
protected Class<?> findClass(Stringname) throws ClassNotFoundException
- 使用指定的二进制名称查找类。此方法应该被类加载器的实现重写,该实现按照委托模型来加载类。在通过父类加载器检查所请求的类后,此方法将被
方法调用。默认实现抛出一个loadClass
ClassNotFoundException
。 - 参数:
name
- 类的二进制名称- 返回:
- 得到的
Class
对象 - 抛出:
ClassNotFoundException
- 如果无法找到类- 从以下版本开始:
- 1.2
defineClass
@Deprecated protected final Class<?> defineClass(byte[]b, intoff, intlen) throws ClassFormatError
- 已过时。由
defineClass(String, byte[], int, int)
取代 - 将一个字节数组转换为
Class
类的实例。必须分析Class
,然后才能使用它。此方法已废弃,新版本将二进制名称作为该类的第一个参数,后者更加安全。 - 参数:
b
- 组成类数据的字节。off
与off+len-1
之间的字节应该具有《Java Virtual Machine Specification》定义的有效类文件的格式。off
- 类数据的b
中的起始偏移量len
- 类数据的长度- 返回:
- 从指定类数据创建的
Class
对象 - 抛出:
ClassFormatError
- 如果数据不包含有效类IndexOutOfBoundsException
- 如果off
或len
为负,或者如果off+len
大于b.length
。- 另请参见:
loadClass(String, boolean)
,resolveClass(Class)
defineClass
protected final Class<?> defineClass(Stringname, byte[]b, intoff, intlen) throws ClassFormatError
- 将一个字节数组转换为
Class
类的实例。必须分析Class
,然后才能使用它。此方法将默认的
分配给新定义的类。调用ProtectionDomain
时,Policy.getPolicy().getPermissions(new CodeSource(null, null))
ProtectionDomain
被有效授予所返回的相同权限集。默认域在第一次调用
时创建,并在后续调用时被重用。defineClass
要将特定的
ProtectionDomain
分配给类,需要使用
方法,该方法将defineClass
ProtectionDomain
用作其参数之一。 - 参数:
name
- 所需要的类的二进制名称,如果不知道此名称,则该参数为null
b
- 组成类数据的字节。off
与off+len-1
之间的字节应该具有《Java Virtual Machine Specification》定义的有效类文件的格式。off
- 类数据的b
中的起始偏移量len
- 类数据的长度- 返回:
- 从指定类数据中创建的
Class
对象。 - 抛出:
ClassFormatError
- 如果数据不包含有效类IndexOutOfBoundsException
- 如果off
或len
为负,或者如果off+len
大于b.length
。SecurityException
- 如果试图将此类添加到包含由不同证书集签名的类(而不是此类,此类未签名)的包中,或者如果name
以 "java.
" 开头。- 从以下版本开始:
- 1.1
- 另请参见:
loadClass(String, boolean)
,resolveClass(Class)
,CodeSource
,SecureClassLoader
defineClass
protected final Class<?> defineClass(Stringname, byte[]b, intoff, intlen, java.security.ProtectionDomainprotectionDomain) throws ClassFormatError
- 使用可选的
ProtectionDomain
将一个字节数组转换为Class
类的实例。如果该域为null
,则将默认域分配给defineClass(String, byte[], int, int)
的文档中指定的类。这个类必须分析后才能使用。包中定义的第一个类确定在该包中定义的所有后续类必须包含的证书的确切集合。从该类的
ProtectionDomain
中的
可以获得类的证书集合。添加到该包中的任何类都必须包含相同的证书集合,否则抛出CodeSource
SecurityException
异常。注意,如果name
为null
,则不执行该检查。应该始终传入要定义的类的二进制名称以及字节。这可确保定义该类的正确性。指定的
name
不能以 "java.
" 开头,因为 "java.*
" 包中的所有类都只能由引导类加载器定义。如果name
不是null
,则它必定等于由字节数组 "b
" 指定的类的二进制名称,否则将抛出NoClassDefFoundError
。 - 参数:
name
- 所需类的二进制名称,如果不知道此名称,则该参数为null
b
- 组成类数据的字节。从off
到off+len-1
的字节应该具有由《Java Virtual Machine Specification》定义的有效类文件的格式。off
- 类数据的b
中的起始偏移量len
- 类数据的长度protectionDomain
- 类的 ProtectionDomain- 返回:
- 从数据中创建的
Class
对象和可选的ProtectionDomain
。 - 抛出:
ClassFormatError
- 如果数据不包含有效的类NoClassDefFoundError
- 如果name
不等于b
指定的类的二进制名称。IndexOutOfBoundsException
- 如果off
或者len
为负,或者如果off+len
大于b.length
。SecurityException
- 如果试图将此类添加到某个包中,而这个包中包含由不同证书集合(而不是该类)签名的类,或者如果name
以 "java.
" 开头。
defineClass
protected final Class<?> defineClass(Stringname, java.nio.ByteBufferb, java.security.ProtectionDomainprotectionDomain) throws ClassFormatError
- 使用可选的
ProtectionDomain
将
转换为ByteBuffer
Class
类的实例。如果该域为null
,则将默认域分配给defineClass(String, byte[], int, int)
的文档中指定的类。这个类必须分析后才能使用。有关包中定义的第一个类(它确定了包的证书集合)的规则,以及对类名称的限制,都与
defineClass(String, byte[], int, int, ProtectionDomain)
的文档中指定的相同。调用形式为 cl
.defineClass(
name,
bBuffer,
pd)
的此方法所产生的结果与以下语句产生的结果相同... byte[] temp = new byte[
bBuffer.
bBufferremaining
()];.
get
(temp); returncl
.defineClass
(
name, temp, 0, temp.length,
pd);
- 参数:
name
- 所需要的类的二进制名称,如果不知道此名称,则该参数为null
b
- 组成类数据的字节。从b.position
到b.position() + b.limit() -1
的字节应该具有由《Java Virtual Machine Specification》定义的有效类文件的格式。protectionDomain
- 类的 ProtectionDomain,或为null
。- 返回:
- 从数据中创建的
Class
对象和可选的ProtectionDomain
。 - 抛出:
ClassFormatError
- 如果数据不包含有效的类。NoClassDefFoundError
- 如果name
不等于b
指定的类的二进制名称。SecurityException
- 如果试图将此类添加到某个包中,而这个包中包含由不同证书集合(而不是该类)签名的类,或者如果name
以 "java.
" 开头。- 从以下版本开始:
- 1.5
- 另请参见:
defineClass(String, byte[], int, int, ProtectionDomain)
resolveClass
protected final void resolveClass(Class<?>c)
- 链接指定的类。类加载器可以使用此方法(其名称容易使人误解)来链接类。如果已经链接类
c
,则仅返回此方法。否则,该类就按《Java Language Specification》中 "Execution" 一章所描述的进行链接。 - 参数:
c
- 要链接的类- 抛出:
NullPointerException
- 如果c
为null
。- 另请参见:
defineClass(String, byte[], int, int)
findSystemClass
protected final Class<?> findSystemClass(Stringname) throws ClassNotFoundException
- 查找具有指定的二进制名称的类,必要时加载它。
此方法通过系统类加载器(参见
getSystemClassLoader()
)来加载该类。返回的Class
对象具有多个与之相关联的ClassLoader
。ClassLoader
的子类通常不必调用此方法,因为大多数类加载器只需重写findClass(String)
即可。 - 参数:
name
- 类的二进制名称- 返回:
- 指定
name
的Class
对象 - 抛出:
ClassNotFoundException
- 如果找不到类- 另请参见:
ClassLoader(ClassLoader)
,getParent()
findLoadedClass
protected final Class<?> findLoadedClass(Stringname)
- 如果 Java 虚拟机已将此加载器记录为具有给定二进制名称的某个类的启动加载器,则返回该二进制名称的类。否则,返回
null
。 - 参数:
name
- 类的二进制名称- 返回:
Class
对象,如果类没有被加载,则返回null
- 从以下版本开始:
- 1.1
setSigners
protected final void setSigners(Class<?>c, Object[]signers)
- 设置类的签署者。应该在定义类后调用此方法。
- 参数:
c
-Class
对象signers
- 类的签署者- 从以下版本开始:
- 1.1
getResource
public java.net.URL getResource(Stringname)
- 查找具有给定名称的资源。资源是可以通过类代码以与代码位置无关的方式访问的一些数据(图像、声音、文本等)。
资源名称是以 '
/
' 分隔的标识资源的路径名称。此方法首先搜索资源的父类加载器;如果父类加载器为
null
,则搜索的路径就是虚拟机的内置类加载器的路径。如果搜索失败,则此方法将调用findResource(String)
来查找资源。 - 参数:
name
- 资源名称- 返回:
- 读取资源的
URL
对象,或者如果找不到该资源,或者调用者没有足够的权限获取该资源,则返回null
。 - 从以下版本开始:
- 1.1
getResources
public Enumeration<java.net.URL> getResources(Stringname) throws IOException
- 查找所有给定名称的资源。资源是可以通过类代码以与代码位置无关的方式访问的某些数据(图像、声音、文本等)。
资源名称是以 '
/
' 分隔的标识资源的路径名称。getResource(String)
的文档中描述了搜索顺序。 - 参数:
name
- 资源名称- 返回:
- 资源的
对象的枚举。如果找不到资源,则该枚举将为空。类加载器无权访问的资源不在此枚举中。URL
- 抛出:
IOException
- 如果发生 I/O 错误- 从以下版本开始:
- 1.2
- 另请参见:
findResources(String)
findResource
protected java.net.URL findResource(Stringname)
- 查找具有给定名称的资源。类加载器实现应该重写此方法,以指定从何处查找资源。
- 参数:
name
- 资源名称- 返回:
- 用于读取资源的
URL
对象,或者如果无法找到资源,则返回null
- 从以下版本开始:
- 1.2
findResources
protected Enumeration<java.net.URL> findResources(Stringname) throws IOException
- 返回表示所有具有给定名称的资源的
对象的枚举。类加载器实现应该重写此方法,以指定从何处加载资源。URL
- 参数:
name
- 资源名称- 返回:
- 资源的
对象的枚举URL
- 抛出:
IOException
- 如果发生 I/O 错误- 从以下版本开始:
- 1.2
getSystemResource
public static java.net.URL getSystemResource(Stringname)
- 从用来加载类的搜索路径中查找具有指定名称的资源。此方法通过系统类加载器(参见
getSystemClassLoader()
)来查找资源。 - 参数:
name
- 资源名称- 返回:
- 用于读取资源的
对象,如果找不到资源,则返回URL
null
- 从以下版本开始:
- 1.1
getSystemResources
public static Enumeration<java.net.URL> getSystemResources(Stringname) throws IOException
- 从用来加载类的搜索路径中查找所有具有指定名称的资源。找到的资源作为
对象的URL
返回。Enumeration
getSystemResource(String)
的文档中描述了搜索顺序。 - 参数:
name
- 资源名称- 返回:
- 资源
对象的枚举URL
- 抛出:
IOException
- 如果发生 I/O 错误- 从以下版本开始:
- 1.2
getResourceAsStream
public InputStream getResourceAsStream(Stringname)
- 返回读取指定资源的输入流。
getResource(String)
的文档中描述了搜索顺序。 - 参数:
name
- 资源名称- 返回:
- 用于读取资源的输入流,如果无法找到资源,则返回
null
- 从以下版本开始:
- 1.1
getSystemResourceAsStream
public static InputStream getSystemResourceAsStream(Stringname)
- 从用来加载类的搜索路径打开具有指定名称的资源,以读取该资源。此方法通过系统类加载器(参见
getSystemClassLoader()
)来查找资源。 - 参数:
name
- 资源名称- 返回:
- 用于读取资源的输入流,如果无法找到资源,则返回
null
- 从以下版本开始:
- 1.1
getParent
public final ClassLoader getParent()
- 返回委托的父类加载器。一些实现可能使用
null
来表示引导类加载器。如果类加载器的父类加载器就是引导类加载器,则此方法将在这样的实现中返回null
。如果存在安全管理器,且调用者的类加载器既不是
null
,也不是此类加载器的祖先,那么此方法将使用
权限调用安全管理器的RuntimePermission("getClassLoader")
方法,以检验是否允许访问该类的父类加载器。如果无此权限,则抛出checkPermission
SecurityException
异常。 - 返回:
- 父级
ClassLoader
- 抛出:
SecurityException
- 如果存在安全管理器,并且其checkPermission
方法不允许访问此类加载器的父类加载器。- 从以下版本开始:
- 1.2
getSystemClassLoader
public static ClassLoader getSystemClassLoader()
- 返回委托的系统类加载器。该加载器是新的
ClassLoader
实例的默认委托父类加载器,通常是用来启动应用程序的类加载器。在运行时启动序列的早期首先调用此方法,这时会创建系统类加载器并将其设置为调用
Thread
的上下文类加载器。默认的系统类加载器是此类的一个与实现有关的实例。
如果在第一次调用此方法时定义系统属性 "
java.system.class.loader
",那么该属性的值就是将作为系统类加载器返回的那个类的名称。该类是使用默认系统类加载器进行加载的,它必须定义一个公共的构造方法,此构造方法带有用作委托父类加载器的ClassLoader
类型的单个参数。然后可以使用将默认系统类加载器用作参数的此构造方法创建一个实例。得到的类加载器被定义为系统类加载器。如果存在安全管理器,且调用者的类加载器既不是
null
,也不同于或不是系统类加载器的祖先,那么该方法将使用
权限调用安全管理器的RuntimePermission("getClassLoader")
方法,以检验系统类加载器的访问权。如果无此权限,则抛出checkPermission
SecurityException
异常。 - 返回:
- 委托的系统
ClassLoader
,如果没有这样的类加载器,则返回null
- 抛出:
SecurityException
- 如果存在安全管理器,且其checkPermission
方法不允许访问系统类加载器。IllegalStateException
- 如果在构造由 "java.system.class.loader
" 属性指定的类加载器期间进行递归调用。Error
- 如果定义了系统属性 "java.system.class.loader
",但是无法加载指定的类,提供者类没有定义所需的构造方法,或者在调用该构造方法时抛出异常。可以通过Throwable.getCause()
方法找出导致该错误的基本原因。
definePackage
protected Package definePackage(Stringname, StringspecTitle, StringspecVersion, StringspecVendor, StringimplTitle, StringimplVersion, StringimplVendor, java.net.URLsealBase) throws IllegalArgumentException
- 使用此
ClassLoader
中的名称来定义包。这允许类加载器定义用于它们的类的包。包必须在定义类之前创建,包名在类加载器中必须惟一,并且一旦创建就不能重新定义或更改。 - 参数:
name
- 包名specTitle
- 规范标题specVersion
- 规范版本specVendor
- 规范供应商implTitle
- 实现标题implVersion
- 实现版本implVendor
- 实现供应商sealBase
- 如果不为null
,那么将此包对于给定代码源
对象是密封的。否则,不密封此包。URL
- 返回:
- 新定义的
Package
对象 - 抛出:
IllegalArgumentException
- 如果包名与此类加载器或其某个祖先中的现有包的名称重复- 从以下版本开始:
- 1.2
getPackage
protected Package getPackage(Stringname)
- 返回由此类加载器或其任何祖先所定义的
Package
。 - 参数:
name
- 包名- 返回:
- 与给定名称相对应的
Package
;如果没有这样的包,则返回null
- 从以下版本开始:
- 1.2
getPackages
protected Package[] getPackages()
- 返回此类加载器及其祖先所定义的所有
Package
。 - 返回:
- 此
ClassLoader
定义的Package
对象的数组 - 从以下版本开始:
- 1.2
findLibrary
protected String findLibrary(Stringlibname)
- 返回本机库的绝对路径名。虚拟机 (VM) 调用此方法来查找那些属于利用此类加载器加载的类的本机库。如果此方法返回
null
,则虚拟机沿指定为 "java.library.path
" 属性的路径搜索该库。 - 参数:
libname
- 库名称- 返回:
- 本机库的绝对路径
- 从以下版本开始:
- 1.2
- 另请参见:
System.loadLibrary(String)
,System.mapLibraryName(String)
setDefaultAssertionStatus
public void setDefaultAssertionStatus(booleanenabled)
- 设置此类加载器的默认断言状态。此设置确定由此类加载器加载并在将来初始化的类在默认情况下是启用还是禁用断言。通过调用
setPackageAssertionStatus(String, boolean)
或setClassAssertionStatus(String, boolean)
,在每个包或每个类上重写此设置。 - 参数:
enabled
- 如果由此类加载器加载的类将默认为启用断言,则该参数为true
;如果默认为禁用断言,则该参数为false
。- 从以下版本开始:
- 1.4
setPackageAssertionStatus
public void setPackageAssertionStatus(StringpackageName, booleanenabled)
- 为指定包设置默认断言状态。包的默认断言状态确定了以后初始化属于指定包或其子包的类的断言状态。
名为 p 的包的子包是所有名称以 "
p.
" 开头的包。例如,javax.swing.text
是javax.swing
的子包,java.util
和java.lang.reflect
是java
的子包。如果默认情况下多个包可应用于一个给定类,则默认与最特殊的包相关的包拥有高于其他包的优先级。例如,如果
javax.lang
和javax.lang.reflect
都具有与之相关的默认包,则将后者应用于javax.lang.reflect
中的类。包的优先级默认情况下高于类加载器的默认断言状态,并且可以通过调用
setClassAssertionStatus(String, boolean)
在每个类的基础上进行重写。 - 参数:
packageName
- 要设置其默认包断言状态的包名。null
值指示未命名的包为“当前”状态(《Java Language Specification》的第 7.4.2 节)。enabled
- 如果由此类加载器加载并属于指定包或其子包的类在默认情况下启用断言,则该参数为true
;如果在默认情况下禁用断言,则该参数为false
。- 从以下版本开始:
- 1.4
setClassAssertionStatus
public void setClassAssertionStatus(StringclassName, booleanenabled)
- 设置在此类加载器及其包含的嵌套类中指定的最高层类所需的断言状态。该设置的优先级高于类加载器的默认断言状态以及可用的任何包的默认值。如果已经初始化指定类,则此方法无效。(初始化类后,其断言状态无法再改变。)
如果指定类不是最高层的类,则此调用对任何类的实际断言都无效,并且其返回值也是不确定的。
- 参数:
className
- 将要设置其断言状态的最高层类的完全限定类名。enabled
- 如果指定类在初始化时启用断言,则该参数为true
;如果该类禁用断言,则该参数为false
。- 从以下版本开始:
- 1.4
clearAssertionStatus
public void clearAssertionStatus()
- 将此类加载器的默认断言状态设置为
false
,并放弃与此类加载器关联的所有默认包或类断言状态设置。提供此方法可以让类加载器忽略任何命令行或持久断言状态设置,并且“无不良记录”。 - 从以下版本开始:
- 1.4
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论