Uses of Interface java.lang.Cloneable (Java Platform SE 8 )
Date: 2026-03-16

## Uses of Interface
java.lang.Cloneable

- Packages that use Cloneable
  Package | Description
  --- | ---
  java.awt | Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.awt.datatransfer | Provides interfaces and classes for transferring data between and within applications.
  java.awt.font | Provides classes and interface relating to fonts.
  java.awt.geom | Provides the Java 2D classes for defining and performing operations on objects related to two-dimensional geometry.
  java.awt.image | Provides classes for creating and modifying images.
  java.awt.image.renderable | Provides classes and interfaces for producing rendering-independent images.
  java.awt.print | Provides classes and interfaces for a general printing API.
  java.net | Provides the classes for implementing networking applications.
  java.security | Provides the classes and interfaces for the security framework.
  java.security.acl | The classes and interfaces in this package have been superseded by classes in the java.security package.
  java.security.cert | Provides classes and interfaces for parsing and managing certificates, certificate revocation lists (CRLs), and certification paths.
  java.sql | Provides the API for accessing and processing data stored in a data source (usually a relational database) using the JavaTM programming language.
  java.text | Provides classes and interfaces for handling text, dates, numbers, and messages in a manner independent of natural languages.
  java.util | Contains the collections framework, legacy collection classes, event model, date and time facilities, internationalization, and miscellaneous utility classes (a string tokenizer, a random-number generator, and a bit array).
  java.util.concurrent | Utility classes commonly useful in concurrent programming.
  java.util.jar | Provides classes for reading and writing the JAR (Java ARchive) file format, which is based on the standard ZIP file format with an optional manifest file.
  java.util.zip | Provides classes for reading and writing the standard ZIP and GZIP file formats.
  javax.activation |
  javax.crypto | Provides the classes and interfaces for cryptographic operations.
  javax.management | Provides the core classes for the Java Management Extensions.
  javax.management.modelmbean | Provides the definition of the ModelMBean classes.
  javax.management.openmbean | Provides the open data types and Open MBean descriptor classes.
  javax.management.relation | Provides the definition of the Relation Service.
  javax.naming | Provides the classes and interfaces for accessing naming services.
  javax.naming.directory | Extends the `javax.naming` package to provide functionality for accessing directory services.
  javax.naming.ldap | Provides support for LDAPv3 extended operations and controls.
  javax.print | Provides the principal classes and interfaces for the JavaTM Print Service API.
  javax.print.attribute | Provides classes and interfaces that describe the types of JavaTM Print Service attributes and how they can be collected into attribute sets.
  javax.print.attribute.standard | Package javax.print.attribute.standard contains classes for specific printing attributes.
  javax.sound.midi | Provides interfaces and classes for I/O, sequencing, and synthesis of MIDI (Musical Instrument Digital Interface) data.
  javax.sql.rowset | Standard interfaces and base classes for JDBC `RowSet` implementations.
  javax.sql.rowset.serial | Provides utility classes to allow serializable mappings between SQL types and data types in the Java programming language.
  javax.swing | Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
  javax.swing.plaf | Provides one interface and many abstract classes that Swing uses to provide its pluggable look-and-feel capabilities.
  javax.swing.plaf.basic | Provides user interface objects built according to the Basic look and feel.
  javax.swing.plaf.metal | Provides user interface objects built according to the Java look and feel (once codenamed Metal), which is the default look and feel.
  javax.swing.text | Provides classes and interfaces that deal with editable and noneditable text components.
  javax.swing.text.html | Provides the class `HTMLEditorKit` and supporting classes for creating HTML text editors.
  javax.swing.text.rtf | Provides a class (`RTFEditorKit`) for creating Rich-Text-Format text editors.
  javax.swing.tree | Provides classes and interfaces for dealing with `javax.swing.JTree`.
  javax.xml.datatype | XML/Java Type Mappings.
  org.ietf.jgss | This package presents a framework that allows application developers to make use of security services like authentication, data integrity and data confidentiality from a variety of underlying security mechanisms like Kerberos, using a unified API.

- - ### Uses of Cloneable in java.awt

    Classes in java.awt that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BufferCapabilities` Capabilities and properties of buffers.
    `class` | `Dimension` The `Dimension` class encapsulates the width and height of a component (in integer precision) in a single object.
    `class` | `GridBagConstraints` The `GridBagConstraints` class specifies constraints for components that are laid out using the `GridBagLayout` class.
    `class` | `ImageCapabilities` Capabilities and properties of images.
    `class` | `Insets` An `Insets` object is a representation of the borders of a container.
    `class` | `JobAttributes` A set of attributes which control a print job.
    `class` | `PageAttributes` A set of attributes which control the output of a printed page.
    `class` | `Point` A point representing a location in `(x,y)` coordinate space, specified in integer precision.
    `class` | `Rectangle` A `Rectangle` specifies an area in a coordinate space that is enclosed by the `Rectangle` object's upper-left point `(x,y)` in the coordinate space, its width, and its height.
    `class` | `RenderingHints` The `RenderingHints` class defines and manages collections of keys and associated values which allow an application to provide input into the choice of algorithms used by other classes which perform rendering and image manipulation services.

  - ### Uses of Cloneable in java.awt.datatransfer

    Classes in java.awt.datatransfer that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DataFlavor` A `DataFlavor` provides meta information about data.

  - ### Uses of Cloneable in java.awt.font

    Classes in java.awt.font that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GlyphVector` A `GlyphVector` object is a collection of glyphs containing geometric information for the placement of each glyph in a transformed coordinate space which corresponds to the device on which the `GlyphVector` is ultimately displayed.
    `class` | `TextLayout` `TextLayout` is an immutable graphical representation of styled character data.
    `class` | `TextMeasurer` The `TextMeasurer` class provides the primitive operations needed for line break: measuring up to a given advance, determining the advance of a range of characters, and generating a `TextLayout` for a range of characters.

  - ### Uses of Cloneable in java.awt.geom

    Classes in java.awt.geom that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AffineTransform` The `AffineTransform` class represents a 2D affine transform that performs a linear mapping from 2D coordinates to other 2D coordinates that preserves the "straightness" and "parallelness" of lines.
    `class` | `Arc2D` `Arc2D` is the abstract superclass for all objects that store a 2D arc defined by a framing rectangle, start angle, angular extent (length of the arc), and a closure type (`OPEN`, `CHORD`, or `PIE`).
    `static class` | `Arc2D.Double` This class defines an arc specified in `double` precision.
    `static class` | `Arc2D.Float` This class defines an arc specified in `float` precision.
    `class` | `Area` An `Area` object stores and manipulates a resolution-independent description of an enclosed area of 2-dimensional space.
    `class` | `CubicCurve2D` The `CubicCurve2D` class defines a cubic parametric curve segment in `(x,y)` coordinate space.
    `static class` | `CubicCurve2D.Double` A cubic parametric curve segment specified with `double` coordinates.
    `static class` | `CubicCurve2D.Float` A cubic parametric curve segment specified with `float` coordinates.
    `class` | `Dimension2D` The `Dimension2D` class is to encapsulate a width and a height dimension.
    `class` | `Ellipse2D` The `Ellipse2D` class describes an ellipse that is defined by a framing rectangle.
    `static class` | `Ellipse2D.Double` The `Double` class defines an ellipse specified in `double` precision.
    `static class` | `Ellipse2D.Float` The `Float` class defines an ellipse specified in `float` precision.
    `class` | `GeneralPath` The `GeneralPath` class represents a geometric path constructed from straight lines, and quadratic and cubic (Bézier) curves.
    `class` | `Line2D` This `Line2D` represents a line segment in `(x,y)` coordinate space.
    `static class` | `Line2D.Double` A line segment specified with double coordinates.
    `static class` | `Line2D.Float` A line segment specified with float coordinates.
    `class` | `Path2D` The `Path2D` class provides a simple, yet flexible shape which represents an arbitrary geometric path.
    `static class` | `Path2D.Double` The `Double` class defines a geometric path with coordinates stored in double precision floating point.
    `static class` | `Path2D.Float` The `Float` class defines a geometric path with coordinates stored in single precision floating point.
    `class` | `Point2D` The `Point2D` class defines a point representing a location in `(x,y)` coordinate space.
    `static class` | `Point2D.Double` The `Double` class defines a point specified in `double` precision.
    `static class` | `Point2D.Float` The `Float` class defines a point specified in float precision.
    `class` | `QuadCurve2D` The `QuadCurve2D` class defines a quadratic parametric curve segment in `(x,y)` coordinate space.
    `static class` | `QuadCurve2D.Double` A quadratic parametric curve segment specified with `double` coordinates.
    `static class` | `QuadCurve2D.Float` A quadratic parametric curve segment specified with `float` coordinates.
    `class` | `Rectangle2D` The `Rectangle2D` class describes a rectangle defined by a location `(x,y)` and dimension `(w x h)`.
    `static class` | `Rectangle2D.Double` The `Double` class defines a rectangle specified in double coordinates.
    `static class` | `Rectangle2D.Float` The `Float` class defines a rectangle specified in float coordinates.
    `class` | `RectangularShape` `RectangularShape` is the base class for a number of `Shape` objects whose geometry is defined by a rectangular frame.
    `class` | `RoundRectangle2D` The `RoundRectangle2D` class defines a rectangle with rounded corners defined by a location `(x,y)`, a dimension `(w x h)`, and the width and height of an arc with which to round the corners.
    `static class` | `RoundRectangle2D.Double` The `Double` class defines a rectangle with rounded corners all specified in `double` coordinates.
    `static class` | `RoundRectangle2D.Float` The `Float` class defines a rectangle with rounded corners all specified in `float` coordinates.

  - ### Uses of Cloneable in java.awt.image

    Classes in java.awt.image that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AreaAveragingScaleFilter` An ImageFilter class for scaling images using a simple area averaging algorithm that produces smoother results than the nearest neighbor algorithm.
    `class` | `BufferedImageFilter` The `BufferedImageFilter` class subclasses an `ImageFilter` to provide a simple means of using a single-source/single-destination image operator (`BufferedImageOp`) to filter a `BufferedImage` in the Image Producer/Consumer/Observer paradigm.
    `class` | `CropImageFilter` An ImageFilter class for cropping images.
    `class` | `ImageFilter` This class implements a filter for the set of interface methods that are used to deliver data from an ImageProducer to an ImageConsumer.
    `class` | `Kernel` The `Kernel` class defines a matrix that describes how a specified pixel and its surrounding pixels affect the value computed for the pixel's position in the output image of a filtering operation.
    `class` | `ReplicateScaleFilter` An ImageFilter class for scaling images using the simplest algorithm.
    `class` | `RGBImageFilter` This class provides an easy way to create an ImageFilter which modifies the pixels of an image in the default RGB ColorModel.

  - ### Uses of Cloneable in java.awt.image.renderable

    Classes in java.awt.image.renderable that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ParameterBlock` A `ParameterBlock` encapsulates all the information about sources and parameters (Objects) required by a RenderableImageOp, or other classes that process images.
    `class` | `RenderContext` A RenderContext encapsulates the information needed to produce a specific rendering from a RenderableImage.

  - ### Uses of Cloneable in java.awt.print

    Classes in java.awt.print that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PageFormat` The `PageFormat` class describes the size and orientation of a page to be printed.
    `class` | `Paper` The `Paper` class describes the physical characteristics of a piece of paper.

  - ### Uses of Cloneable in java.net

    Classes in java.net that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `HttpCookie` An HttpCookie object represents an HTTP cookie, which carries state information between server and user agent.

  - ### Uses of Cloneable in java.security

    Classes in java.security that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AuthProvider` This class defines login and logout methods for a provider.
    `class` | `Provider` This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.

  - ### Uses of Cloneable in java.security.acl

    Subinterfaces of Cloneable in java.security.acl
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `AclEntry` This is the interface used for representing one entry in an Access Control List (ACL).

  - ### Uses of Cloneable in java.security.cert

    Subinterfaces of Cloneable in java.security.cert
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `CertPathBuilderResult` A specification of the result of a certification path builder algorithm.
    `interface` | `CertPathParameters` A specification of certification path algorithm parameters.
    `interface` | `CertPathValidatorResult` A specification of the result of a certification path validator algorithm.
    `interface` | `CertSelector` A selector that defines a set of criteria for selecting `Certificate`s.
    `interface` | `CertStoreParameters` A specification of `CertStore` parameters.
    `interface` | `CRLSelector` A selector that defines a set of criteria for selecting `CRL`s.

    Classes in java.security.cert that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `CollectionCertStoreParameters` Parameters used as input for the Collection `CertStore` algorithm.
    `class` | `LDAPCertStoreParameters` Parameters used as input for the LDAP `CertStore` algorithm.
    `class` | `PKIXBuilderParameters` Parameters used as input for the PKIX `CertPathBuilder` algorithm.
    `class` | `PKIXCertPathBuilderResult` This class represents the successful result of the PKIX certification path builder algorithm.
    `class` | `PKIXCertPathChecker` An abstract class that performs one or more checks on an `X509Certificate`.
    `class` | `PKIXCertPathValidatorResult` This class represents the successful result of the PKIX certification path validation algorithm.
    `class` | `PKIXParameters` Parameters used as input for the PKIX `CertPathValidator` algorithm.
    `class` | `PKIXRevocationChecker` A `PKIXCertPathChecker` for checking the revocation status of certificates with the PKIX algorithm.
    `class` | `X509CertSelector` A `CertSelector` that selects `X509Certificates` that match all specified criteria.
    `class` | `X509CRLSelector` A `CRLSelector` that selects `X509CRLs` that match all specified criteria.

  - ### Uses of Cloneable in java.sql

    Classes in java.sql that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Time` A thin wrapper around the `java.util.Date` class that allows the JDBC API to identify this as an SQL `TIME` value.
    `class` | `Timestamp` A thin wrapper around `java.util.Date` that allows the JDBC API to identify this as an SQL `TIMESTAMP` value.

  - ### Uses of Cloneable in java.text

    Subinterfaces of Cloneable in java.text
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `AttributedCharacterIterator` An `AttributedCharacterIterator` allows iteration through both text and related attribute information.
    `interface` | `CharacterIterator` This interface defines a protocol for bidirectional iteration over text.

    Classes in java.text that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BreakIterator` The `BreakIterator` class implements methods for finding the location of boundaries in text.
    `class` | `ChoiceFormat` A `ChoiceFormat` allows you to attach a format to a range of numbers.
    `class` | `Collator` The `Collator` class performs locale-sensitive `String` comparison.
    `class` | `DateFormat` `DateFormat` is an abstract class for date/time formatting subclasses which formats and parses dates or time in a language-independent manner.
    `class` | `DateFormatSymbols` `DateFormatSymbols` is a public class for encapsulating localizable date-time formatting data, such as the names of the months, the names of the days of the week, and the time zone data.
    `class` | `DecimalFormat` `DecimalFormat` is a concrete subclass of `NumberFormat` that formats decimal numbers.
    `class` | `DecimalFormatSymbols` This class represents the set of symbols (such as the decimal separator, the grouping separator, and so on) needed by `DecimalFormat` to format numbers.
    `class` | `Format` `Format` is an abstract base class for formatting locale-sensitive information such as dates, messages, and numbers.
    `class` | `MessageFormat` `MessageFormat` provides a means to produce concatenated messages in a language-neutral way.
    `class` | `NumberFormat` `NumberFormat` is the abstract base class for all number formats.
    `class` | `RuleBasedCollator` The `RuleBasedCollator` class is a concrete subclass of `Collator` that provides a simple, data-driven, table collator.
    `class` | `SimpleDateFormat` `SimpleDateFormat` is a concrete class for formatting and parsing dates in a locale-sensitive manner.
    `class` | `StringCharacterIterator` `StringCharacterIterator` implements the `CharacterIterator` protocol for a `String`.

  - ### Uses of Cloneable in java.util

    Classes in java.util that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ArrayDeque<E>` Resizable-array implementation of the `Deque` interface.
    `class` | `ArrayList<E>` Resizable-array implementation of the `List` interface.
    `class` | `BitSet` This class implements a vector of bits that grows as needed.
    `class` | `Calendar` The `Calendar` class is an abstract class that provides methods for converting between a specific instant in time and a set of `calendar fields` such as `YEAR`, `MONTH`, `DAY_OF_MONTH`, `HOUR`, and so on, and for manipulating the calendar fields, such as getting the date of the next week.
    `class` | `Date` The class `Date` represents a specific instant in time, with millisecond precision.
    `class` | `EnumMap<K extends Enum<K>,V>` A specialized `Map` implementation for use with enum type keys.
    `class` | `EnumSet<E extends Enum<E>>` A specialized `Set` implementation for use with enum types.
    `class` | `GregorianCalendar` `GregorianCalendar` is a concrete subclass of `Calendar` and provides the standard calendar system used by most of the world.
    `class` | `HashMap<K,V>` Hash table based implementation of the `Map` interface.
    `class` | `HashSet<E>` This class implements the `Set` interface, backed by a hash table (actually a `HashMap` instance).
    `class` | `Hashtable<K,V>` This class implements a hash table, which maps keys to values.
    `class` | `IdentityHashMap<K,V>` This class implements the `Map` interface with a hash table, using reference-equality in place of object-equality when comparing keys (and values).
    `class` | `LinkedHashMap<K,V>` Hash table and linked list implementation of the `Map` interface, with predictable iteration order.
    `class` | `LinkedHashSet<E>` Hash table and linked list implementation of the `Set` interface, with predictable iteration order.
    `class` | `LinkedList<E>` Doubly-linked list implementation of the `List` and `Deque` interfaces.
    `class` | `Locale` A `Locale` object represents a specific geographical, political, or cultural region.
    `class` | `Properties` The `Properties` class represents a persistent set of properties.
    `class` | `SimpleTimeZone` `SimpleTimeZone` is a concrete subclass of `TimeZone` that represents a time zone for use with a Gregorian calendar.
    `class` | `Stack<E>` The `Stack` class represents a last-in-first-out (LIFO) stack of objects.
    `class` | `TimeZone` `TimeZone` represents a time zone offset, and also figures out daylight savings.
    `class` | `TreeMap<K,V>` A Red-Black tree based `NavigableMap` implementation.
    `class` | `TreeSet<E>` A `NavigableSet` implementation based on a `TreeMap`.
    `class` | `Vector<E>` The `Vector` class implements a growable array of objects.

  - ### Uses of Cloneable in java.util.concurrent

    Classes in java.util.concurrent that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ConcurrentSkipListMap<K,V>` A scalable concurrent `ConcurrentNavigableMap` implementation.
    `class` | `ConcurrentSkipListSet<E>` A scalable concurrent `NavigableSet` implementation based on a `ConcurrentSkipListMap`.
    `class` | `CopyOnWriteArrayList<E>` A thread-safe variant of `ArrayList` in which all mutative operations (`add`, `set`, and so on) are implemented by making a fresh copy of the underlying array.

  - ### Uses of Cloneable in java.util.jar

    Classes in java.util.jar that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Attributes` The Attributes class maps Manifest attribute names to associated string values.
    `class` | `JarEntry` This class is used to represent a JAR file entry.
    `class` | `Manifest` The Manifest class is used to maintain Manifest entry names and their associated Attributes.

  - ### Uses of Cloneable in java.util.zip

    Classes in java.util.zip that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ZipEntry` This class is used to represent a ZIP file entry.

  - ### Uses of Cloneable in javax.activation

    Classes in javax.activation that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ActivationDataFlavor` The ActivationDataFlavor class is a special subclass of `java.awt.datatransfer.DataFlavor`.

  - ### Uses of Cloneable in javax.crypto

    Classes in javax.crypto that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Mac` This class provides the functionality of a "Message Authentication Code" (MAC) algorithm.

  - ### Uses of Cloneable in javax.management

    Subinterfaces of Cloneable in javax.management
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Descriptor` Additional metadata for a JMX element.

    Classes in javax.management that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AttributeList` Represents a list of values for attributes of an MBean.
    `class` | `ImmutableDescriptor` An immutable descriptor.
    `class` | `MBeanAttributeInfo` Describes an MBean attribute exposed for management.
    `class` | `MBeanConstructorInfo` Describes a constructor exposed by an MBean.
    `class` | `MBeanInfo` Describes the management interface exposed by an MBean; that is, the set of attributes and operations which are available for management operations.
    `class` | `MBeanNotificationInfo` The `MBeanNotificationInfo` class is used to describe the characteristics of the different notification instances emitted by an MBean, for a given Java class of notification.
    `class` | `MBeanOperationInfo` Describes a management operation exposed by an MBean.
    `class` | `MBeanParameterInfo` Describes an argument of an operation exposed by an MBean.

  - ### Uses of Cloneable in javax.management.modelmbean

    Classes in javax.management.modelmbean that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DescriptorSupport` This class represents the metadata set for a ModelMBean element.
    `class` | `ModelMBeanAttributeInfo` The ModelMBeanAttributeInfo object describes an attribute of the ModelMBean.
    `class` | `ModelMBeanConstructorInfo` The ModelMBeanConstructorInfo object describes a constructor of the ModelMBean.
    `class` | `ModelMBeanInfoSupport` This class represents the meta data for ModelMBeans.
    `class` | `ModelMBeanNotificationInfo` The ModelMBeanNotificationInfo object describes a notification emitted by a ModelMBean.
    `class` | `ModelMBeanOperationInfo` The ModelMBeanOperationInfo object describes a management operation of the ModelMBean.

  - ### Uses of Cloneable in javax.management.openmbean

    Classes in javax.management.openmbean that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `OpenMBeanAttributeInfoSupport` Describes an attribute of an open MBean.
    `class` | `OpenMBeanConstructorInfoSupport` Describes a constructor of an Open MBean.
    `class` | `OpenMBeanInfoSupport` The `OpenMBeanInfoSupport` class describes the management information of an open MBean: it is a subclass of `MBeanInfo`, and it implements the `OpenMBeanInfo` interface.
    `class` | `OpenMBeanOperationInfoSupport` Describes an operation of an Open MBean.
    `class` | `OpenMBeanParameterInfoSupport` Describes a parameter used in one or more operations or constructors of an open MBean.
    `class` | `TabularDataSupport` The `TabularDataSupport` class is the open data class which implements the `TabularData` and the `Map` interfaces, and which is internally based on a hash map data structure.

  - ### Uses of Cloneable in javax.management.relation

    Classes in javax.management.relation that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RoleList` A RoleList represents a list of roles (Role objects).
    `class` | `RoleUnresolvedList` A RoleUnresolvedList represents a list of RoleUnresolved objects, representing roles not retrieved from a relation due to a problem encountered when trying to access (read or write) the roles.

  - ### Uses of Cloneable in javax.naming

    Subinterfaces of Cloneable in javax.naming
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Name` The `Name` interface represents a generic name -- an ordered sequence of components.

    Classes in javax.naming that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `CompositeName` This class represents a composite name -- a sequence of component names spanning multiple namespaces.
    `class` | `CompoundName` This class represents a compound name -- a name from a hierarchical name space.
    `class` | `LinkRef` This class represents a Reference whose contents is a name, called the link name, that is bound to an atomic name in a context.
    `class` | `Reference` This class represents a reference to an object that is found outside of the naming/directory system.

  - ### Uses of Cloneable in javax.naming.directory

    Subinterfaces of Cloneable in javax.naming.directory
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Attribute` This interface represents an attribute associated with a named object.
    `interface` | `Attributes` This interface represents a collection of attributes.

    Classes in javax.naming.directory that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BasicAttribute` This class provides a basic implementation of the `Attribute` interface.
    `class` | `BasicAttributes` This class provides a basic implementation of the Attributes interface.

  - ### Uses of Cloneable in javax.naming.ldap

    Classes in javax.naming.ldap that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `LdapName` This class represents a distinguished name as specified by RFC 2253.

  - ### Uses of Cloneable in javax.print

    Classes in javax.print that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DocFlavor` Class `DocFlavor` encapsulates an object that specifies the format in which print data is supplied to a `DocPrintJob`.
    `static class` | `DocFlavor.BYTE_ARRAY` Class DocFlavor.BYTE_ARRAY provides predefined static constant DocFlavor objects for example doc flavors using a byte array (`byte[]`) as the print data representation class.
    `static class` | `DocFlavor.CHAR_ARRAY` Class DocFlavor.CHAR_ARRAY provides predefined static constant DocFlavor objects for example doc flavors using a character array (`char[]`) as the print data representation class.
    `static class` | `DocFlavor.INPUT_STREAM` Class DocFlavor.INPUT_STREAM provides predefined static constant DocFlavor objects for example doc flavors using a byte stream (`java.io.InputStream`) as the print data representation class.
    `static class` | `DocFlavor.READER` Class DocFlavor.READER provides predefined static constant DocFlavor objects for example doc flavors using a character stream (`java.io.Reader`) as the print data representation class.
    `static class` | `DocFlavor.SERVICE_FORMATTED` Class DocFlavor.SERVICE_FORMATTED provides predefined static constant DocFlavor objects for example doc flavors for service formatted print data.
    `static class` | `DocFlavor.STRING` Class DocFlavor.STRING provides predefined static constant DocFlavor objects for example doc flavors using a string (`java.lang.String`) as the print data representation class.
    `static class` | `DocFlavor.URL` Class DocFlavor.URL provides predefined static constant DocFlavor objects.

  - ### Uses of Cloneable in javax.print.attribute

    Classes in javax.print.attribute that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DateTimeSyntax` Class DateTimeSyntax is an abstract base class providing the common implementation of all attributes whose value is a date and time.
    `class` | `EnumSyntax` Class EnumSyntax is an abstract base class providing the common implementation of all "type safe enumeration" objects.
    `class` | `IntegerSyntax` Class IntegerSyntax is an abstract base class providing the common implementation of all attributes with integer values.
    `class` | `ResolutionSyntax` Class ResolutionSyntax is an abstract base class providing the common implementation of all attributes denoting a printer resolution.
    `class` | `SetOfIntegerSyntax` Class SetOfIntegerSyntax is an abstract base class providing the common implementation of all attributes whose value is a set of nonnegative integers.
    `class` | `Size2DSyntax` Class Size2DSyntax is an abstract base class providing the common implementation of all attributes denoting a size in two dimensions.
    `class` | `TextSyntax` Class TextSyntax is an abstract base class providing the common implementation of all attributes whose value is a string.
    `class` | `URISyntax` Class URISyntax is an abstract base class providing the common implementation of all attributes whose value is a Uniform Resource Identifier (URI).

  - ### Uses of Cloneable in javax.print.attribute.standard

    Classes in javax.print.attribute.standard that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Chromaticity` Class Chromaticity is a printing attribute class, an enumeration, that specifies monochrome or color printing.
    `class` | `ColorSupported` Class ColorSupported is a printing attribute class, an enumeration, that identifies whether the device is capable of any type of color printing at all, including highlight color as well as full process color.
    `class` | `Compression` Class Compression is a printing attribute class, an enumeration, that specifies how print data is compressed.
    `class` | `Copies` Class Copies is an integer valued printing attribute class that specifies the number of copies to be printed.
    `class` | `CopiesSupported` Class CopiesSupported is a printing attribute class, a set of integers, that gives the supported values for a `Copies` attribute.
    `class` | `DateTimeAtCompleted` Class DateTimeAtCompleted is a printing attribute class, a date-time attribute, that indicates the date and time at which the Print Job completed (or was canceled or aborted).
    `class` | `DateTimeAtCreation` Class DateTimeAtCreation is a printing attribute class, a date-time attribute, that indicates the date and time at which the Print Job was created.
    `class` | `DateTimeAtProcessing` Class DateTimeAtProcessing is a printing attribute class, a date-time attribute, that indicates the date and time at which the Print Job first began processing.
    `class` | `Destination` Class Destination is a printing attribute class, a URI, that is used to indicate an alternate destination for the spooled printer formatted data.
    `class` | `DialogTypeSelection` Class DialogTypeSelection is a printing attribute class, an enumeration, that indicates the user dialog type to be used for specifying printing options.
    `class` | `DocumentName` Class DocumentName is a printing attribute class, a text attribute, that specifies the name of a document.
    `class` | `Fidelity` Class Fidelity is a printing attribute class, an enumeration, that indicates whether total fidelity to client supplied print request attributes is required.
    `class` | `Finishings` Class Finishings is a printing attribute class, an enumeration, that identifies whether the printer applies a finishing operation of some kind of binding to each copy of each printed document in the job.
    `class` | `JobHoldUntil` Class JobHoldUntil is a printing attribute class, a date-time attribute, that specifies the exact date and time at which the job must become a candidate for printing.
    `class` | `JobImpressions` Class JobImpressions is an integer valued printing attribute class that specifies the total size in number of impressions of the document(s) being submitted.
    `class` | `JobImpressionsCompleted` Class JobImpressionsCompleted is an integer valued printing attribute class that specifies the number of impressions completed for the job so far.
    `class` | `JobImpressionsSupported` Class JobImpressionsSupported is a printing attribute class, a set of integers, that gives the supported values for a `JobImpressions` attribute.
    `class` | `JobKOctets` Class JobKOctets is an integer valued printing attribute class that specifies the total size of the document(s) in K octets, i.e., in units of 1024 octets requested to be processed in the job.
    `class` | `JobKOctetsProcessed` Class JobKOctetsProcessed is an integer valued printing attribute class that specifies the total number of print data octets processed so far in K octets, i.e., in units of 1024 octets.
    `class` | `JobKOctetsSupported` Class JobKOctetsSupported is a printing attribute class, a set of integers, that gives the supported values for a `JobKOctets` attribute.
    `class` | `JobMediaSheets` Class JobMediaSheets is an integer valued printing attribute class that specifies the total number of media sheets to be produced for this job.
    `class` | `JobMediaSheetsCompleted` Class JobMediaSheetsCompleted is an integer valued printing attribute class that specifies the number of media sheets which have completed marking and stacking for the entire job so far, whether those sheets have been processed on one side or on both.
    `class` | `JobMediaSheetsSupported` Class JobMediaSheetsSupported is a printing attribute class, a set of integers, that gives the supported values for a `JobMediaSheets` attribute.
    `class` | `JobMessageFromOperator` Class JobMessageFromOperator is a printing attribute class, a text attribute, that provides a message from an operator, system administrator, or "intelligent" process to indicate to the end user the reasons for modification or other management action taken on a job.
    `class` | `JobName` Class JobName is a printing attribute class, a text attribute, that specifies the name of a print job.
    `class` | `JobOriginatingUserName` Class JobOriginatingUserName is a printing attribute class, a text attribute, that contains the name of the end user that submitted the print job.
    `class` | `JobPriority` Class JobPriority is an integer valued printing attribute class that specifies a print job's priority.
    `class` | `JobPrioritySupported` Class JobPrioritySupported is an integer valued printing attribute class that specifies whether a Print Service instance supports the `JobPriority` attribute and the number of different job priority levels supported.
    `class` | `JobSheets` Class JobSheets is a printing attribute class, an enumeration, that determines which job start and end sheets, if any, must be printed with a job.
    `class` | `JobState` JobState is a printing attribute class, an enumeration, that identifies the current state of a print job.
    `class` | `JobStateReason` Class JobStateReason is a printing attribute class, an enumeration, that provides additional information about the job's current state, i.e., information that augments the value of the job's `JobState` attribute.
    `class` | `JobStateReasons` Class JobStateReasons is a printing attribute class, a set of enumeration values, that provides additional information about the job's current state, i.e., information that augments the value of the job's `JobState` attribute.
    `class` | `Media` Class Media is a printing attribute class that specifies the medium on which to print.
    `class` | `MediaName` Class MediaName is a subclass of Media, a printing attribute class (an enumeration) that specifies the media for a print job as a name.
    `class` | `MediaSize` Class MediaSize is a two-dimensional size valued printing attribute class that indicates the dimensions of the medium in a portrait orientation, with the X dimension running along the bottom edge and the Y dimension running along the left edge.
    `class` | `MediaSizeName` Class MediaSizeName is a subclass of Media.
    `class` | `MediaTray` Class MediaTray is a subclass of Media.
    `class` | `MultipleDocumentHandling` Class MultipleDocumentHandling is a printing attribute class, an enumeration, that controls finishing operations and the placement of one or more print-stream pages into impressions and onto media sheets.
    `class` | `NumberOfDocuments` Class NumberOfDocuments is an integer valued printing attribute that indicates the number of individual docs the printer has accepted for this job, regardless of whether the docs' print data has reached the printer or not.
    `class` | `NumberOfInterveningJobs` Class NumberOfInterveningJobs is an integer valued printing attribute that indicates the number of jobs that are ahead of this job in the relative chronological order of expected time to complete (i.e., the current scheduled order).
    `class` | `NumberUp` Class NumberUp is an integer valued printing attribute class that specifies the number of print-stream pages to impose upon a single side of an instance of a selected medium.
    `class` | `NumberUpSupported` Class NumberUpSupported is a printing attribute class, a set of integers, that gives the supported values for a `NumberUp` attribute.
    `class` | `OrientationRequested` Class OrientationRequested is a printing attribute class, an enumeration, that indicates the desired orientation for printed print-stream pages; it does not describe the orientation of the client-supplied print-stream pages.
    `class` | `OutputDeviceAssigned` Class OutputDeviceAssigned is a printing attribute class, a text attribute, that identifies the output device to which the service has assigned this job.
    `class` | `PageRanges` Class PageRanges is a printing attribute class, a set of integers, that identifies the range(s) of print-stream pages that the Printer object uses for each copy of each document which are to be printed.
    `class` | `PagesPerMinute` Class PagesPerMinute is an integer valued printing attribute that indicates the nominal number of pages per minute to the nearest whole number which may be generated by this printer (e.g., simplex, black-and-white).
    `class` | `PagesPerMinuteColor` Class PagesPerMinuteColor is an integer valued printing attribute that indicates the nominal number of pages per minute to the nearest whole number which may be generated by this printer when printing color (e.g., simplex, color).
    `class` | `PDLOverrideSupported` Class PDLOverrideSupported is a printing attribute class, an enumeration, that expresses the printer's ability to attempt to override processing instructions embedded in documents' print data with processing instructions specified as attributes outside the print data.
    `class` | `PresentationDirection` Class PresentationDirection is a printing attribute class, an enumeration, that is used in conjunction with the `NumberUp` attribute to indicate the layout of multiple print-stream pages to impose upon a single side of an instance of a selected medium.
    `class` | `PrinterInfo` Class PrinterInfo is a printing attribute class, a text attribute, that provides descriptive information about a printer.
    `class` | `PrinterIsAcceptingJobs` Class PrinterIsAcceptingJobs is a printing attribute class, an enumeration, that indicates whether the printer is currently able to accept jobs.
    `class` | `PrinterLocation` Class PrinterLocation is a printing attribute class, a text attribute, that identifies the location of the device.
    `class` | `PrinterMakeAndModel` Class PrinterMakeAndModel is a printing attribute class, a text attribute, that the make and model of the printer.
    `class` | `PrinterMessageFromOperator` Class PrinterMessageFromOperator is a printing attribute class, a text attribute, that provides a message from an operator, system administrator, or "intelligent" process to indicate to the end user information about or status of the printer, such as why it is unavailable or when it is expected to be available.
    `class` | `PrinterMoreInfo` Class PrinterMoreInfo is a printing attribute class, a URI, that is used to obtain more information about this specific printer.
    `class` | `PrinterMoreInfoManufacturer` Class PrinterMoreInfoManufacturer is a printing attribute class, a URI, that is used to obtain more information about this type of device.
    `class` | `PrinterName` Class PrinterName is a printing attribute class, a text attribute, that specifies the name of a printer.
    `class` | `PrinterResolution` Class PrinterResolution is a printing attribute class that specifies an exact resolution supported by a printer or to be used for a print job.
    `class` | `PrinterState` Class PrinterState is a printing attribute class, an enumeration, that identifies the current state of a printer.
    `class` | `PrinterStateReason` Class PrinterStateReason is a printing attribute class, an enumeration, that provides additional information about the printer's current state, i.e., information that augments the value of the printer's `PrinterState` attribute.
    `class` | `PrinterStateReasons` Class PrinterStateReasons is a printing attribute class, a set of enumeration values, that provides additional information about the printer's current state, i.e., information that augments the value of the printer's `PrinterState` attribute.
    `class` | `PrinterURI` Class PrinterURI is a printing attribute class, a URI, that specifies the globally unique name of a printer.
    `class` | `PrintQuality` Class PrintQuality is a printing attribute class, an enumeration, that specifies the print quality that the printer uses for the job.
    `class` | `QueuedJobCount` Class QueuedJobCount is an integer valued printing attribute that indicates the number of jobs in the printer whose `JobState` is either PENDING, PENDING_HELD, PROCESSING, or PROCESSING_STOPPED.
    `class` | `ReferenceUriSchemesSupported` Class ReferenceUriSchemesSupported is a printing attribute class an enumeration, that indicates a "URI scheme," such as "http:" or "ftp:", that a printer can use to retrieve print data stored at a URI location.
    `class` | `RequestingUserName` Class RequestingUserName is a printing attribute class, a text attribute, that specifies the name of the end user that submitted the print job.
    `class` | `Severity` Class Severity is a printing attribute class, an enumeration, that denotes the severity of a `PrinterStateReason` attribute.
    `class` | `SheetCollate` Class SheetCollate is a printing attribute class, an enumeration, that specifies whether or not the media sheets of each copy of each printed document in a job are to be in sequence, when multiple copies of the document are specified by the `Copies` attribute.
    `class` | `Sides` Class Sides is a printing attribute class, an enumeration, that specifies how print-stream pages are to be imposed upon the sides of an instance of a selected medium, i.e., an impression.

  - ### Uses of Cloneable in javax.sound.midi

    Classes in javax.sound.midi that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MetaMessage` A `MetaMessage` is a ``MidiMessage`` that is not meaningful to synthesizers, but that can be stored in a MIDI file and interpreted by a sequencer program.
    `class` | `MidiMessage` `MidiMessage` is the base class for MIDI messages.
    `class` | `ShortMessage` A `ShortMessage` contains a MIDI message that has at most two data bytes following its status byte.
    `class` | `SysexMessage` A `SysexMessage` object represents a MIDI system exclusive message.

  - ### Uses of Cloneable in javax.sql.rowset

    Classes in javax.sql.rowset that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BaseRowSet` An abstract class providing a `RowSet` object with its basic functionality.

  - ### Uses of Cloneable in javax.sql.rowset.serial

    Classes in javax.sql.rowset.serial that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SerialArray` A serialized version of an `Array` object, which is the mapping in the Java programming language of an SQL `ARRAY` value.
    `class` | `SerialBlob` A serialized mapping in the Java programming language of an SQL `BLOB` value.
    `class` | `SerialClob` A serialized mapping in the Java programming language of an SQL `CLOB` value.
    `class` | `SerialDatalink` A serialized mapping in the Java programming language of an SQL `DATALINK` value.
    `class` | `SerialJavaObject` A serializable mapping in the Java programming language of an SQL `JAVA_OBJECT` value.
    `class` | `SerialRef` A serialized mapping of a `Ref` object, which is the mapping in the Java programming language of an SQL `REF` value.
    `class` | `SerialStruct` A serialized mapping in the Java programming language of an SQL structured type.

  - ### Uses of Cloneable in javax.swing

    Classes in javax.swing that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractAction` This class provides default implementations for the JFC `Action` interface.
    `class` | `DefaultListSelectionModel` Default data model for list selections.
    `class` | `GrayFilter` An image filter that "disables" an image by turning it into a grayscale image, and brightening the pixels in the image.
    `static class` | `JTree.DynamicUtilTreeNode` `DynamicUtilTreeNode` can wrap vectors/hashtables/arrays/strings and create the appropriate children tree nodes as necessary.
    `protected static class` | `JTree.EmptySelectionModel` `EmptySelectionModel` is a `TreeSelectionModel` that does not allow anything to be selected.
    `class` | `UIDefaults` A table of defaults for Swing components.

  - ### Uses of Cloneable in javax.swing.plaf

    Classes in javax.swing.plaf that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DimensionUIResource`
    `class` | `InsetsUIResource`

  - ### Uses of Cloneable in javax.swing.plaf.basic

    Classes in javax.swing.plaf.basic that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `protected class` | `BasicDesktopPaneUI.CloseAction` Handles closing an internal frame.
    `protected class` | `BasicDesktopPaneUI.MaximizeAction` Handles maximizing an internal frame.
    `protected class` | `BasicDesktopPaneUI.MinimizeAction` Handles minimizing an internal frame.
    `protected class` | `BasicDesktopPaneUI.NavigateAction` Handles navigating to the next internal frame.
    `protected class` | `BasicDesktopPaneUI.OpenAction` Handles restoring a minimized or maximized internal frame.
    `protected class` | `BasicFileChooserUI.ApproveSelectionAction` Responds to an Open or Save request
    `protected class` | `BasicFileChooserUI.CancelSelectionAction` Responds to a cancel request.
    `protected class` | `BasicFileChooserUI.ChangeToParentDirectoryAction`
    `protected class` | `BasicFileChooserUI.GoHomeAction` Acts on the "home" key event or equivalent event.
    `protected class` | `BasicFileChooserUI.NewFolderAction` Creates a new folder.
    `protected class` | `BasicFileChooserUI.UpdateAction` Rescans the files in the current directory
    `class` | `BasicInternalFrameTitlePane.CloseAction` This class should be treated as a "protected" inner class.
    `class` | `BasicInternalFrameTitlePane.IconifyAction` This class should be treated as a "protected" inner class.
    `class` | `BasicInternalFrameTitlePane.MaximizeAction` This class should be treated as a "protected" inner class.
    `class` | `BasicInternalFrameTitlePane.MoveAction` This class should be treated as a "protected" inner class.
    `class` | `BasicInternalFrameTitlePane.RestoreAction` This class should be treated as a "protected" inner class.
    `class` | `BasicInternalFrameTitlePane.SizeAction` This class should be treated as a "protected" inner class.
    `class` | `BasicSliderUI.ActionScroller` As of Java 2 platform v1.3 this undocumented class is no longer used.
    `static class` | `BasicTextUI.BasicCaret`
    `class` | `BasicTreeUI.TreeCancelEditingAction` ActionListener that invokes cancelEditing when action performed.
    `class` | `BasicTreeUI.TreeHomeAction` TreeHomeAction is used to handle end/home actions.
    `class` | `BasicTreeUI.TreeIncrementAction` TreeIncrementAction is used to handle up/down actions.
    `class` | `BasicTreeUI.TreePageAction` TreePageAction handles page up and page down events.
    `class` | `BasicTreeUI.TreeToggleAction` For the first selected row expandedness will be toggled.
    `class` | `BasicTreeUI.TreeTraverseAction` `TreeTraverseAction` is the action used for left/right keys.

  - ### Uses of Cloneable in javax.swing.plaf.metal

    Classes in javax.swing.plaf.metal that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `protected class` | `MetalFileChooserUI.DirectoryComboBoxAction` Acts when DirectoryComboBox has changed the selected item.

  - ### Uses of Cloneable in javax.swing.text

    Classes in javax.swing.text that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DateFormatter` DateFormatter is an `InternationalFormatter` that does its formatting by way of an instance of `java.text.DateFormat`.
    `class` | `DefaultCaret` A default implementation of Caret.
    `class` | `DefaultEditorKit` This is the set of things needed by a text component to be a reasonably functioning editor for some type of text document.
    `static class` | `DefaultEditorKit.BeepAction` Creates a beep.
    `static class` | `DefaultEditorKit.CopyAction` Copies the selected region and place its contents into the system clipboard.
    `static class` | `DefaultEditorKit.CutAction` Cuts the selected region and place its contents into the system clipboard.
    `static class` | `DefaultEditorKit.DefaultKeyTypedAction` The action that is executed by default if a key typed event is received and there is no keymap entry.
    `static class` | `DefaultEditorKit.InsertBreakAction` Places a line/paragraph break into the document.
    `static class` | `DefaultEditorKit.InsertContentAction` Places content into the associated document.
    `static class` | `DefaultEditorKit.InsertTabAction` Places a tab character into the document.
    `static class` | `DefaultEditorKit.PasteAction` Pastes the contents of the system clipboard into the selected region, or before the caret if nothing is selected.
    `class` | `DefaultFormatter` `DefaultFormatter` formats arbitrary objects.
    `class` | `EditorKit` Establishes the set of things needed by a text component to be a reasonably functioning editor for some type of text content.
    `class` | `ElementIterator` ElementIterator, as the name suggests, iterates over the Element tree.
    `class` | `GlyphView` A GlyphView is a styled chunk of text that represents a view mapped over an element in the text model.
    `class` | `InternationalFormatter` `InternationalFormatter` extends `DefaultFormatter`, using an instance of `java.text.Format` to handle the conversion to a String, and the conversion from a String.
    `class` | `LabelView` A `LabelView` is a styled chunk of text that represents a view mapped over an element in the text model.
    `class` | `MaskFormatter` `MaskFormatter` is used to format and edit strings.
    `class` | `NumberFormatter` `NumberFormatter` subclasses `InternationalFormatter` adding special behavior for numbers.
    `class` | `Segment` A segment of a character array representing a fragment of text.
    `class` | `SimpleAttributeSet` A straightforward implementation of MutableAttributeSet using a hash table.
    `class` | `StyledEditorKit` This is the set of things needed by a text component to be a reasonably functioning editor for some type of text document.
    `static class` | `StyledEditorKit.AlignmentAction` An action to set paragraph alignment.
    `static class` | `StyledEditorKit.BoldAction` An action to toggle the bold attribute.
    `static class` | `StyledEditorKit.FontFamilyAction` An action to set the font family in the associated JEditorPane.
    `static class` | `StyledEditorKit.FontSizeAction` An action to set the font size in the associated JEditorPane.
    `static class` | `StyledEditorKit.ForegroundAction` An action to set foreground color.
    `static class` | `StyledEditorKit.ItalicAction` An action to toggle the italic attribute.
    `static class` | `StyledEditorKit.StyledTextAction` An action that assumes it's being fired on a JEditorPane with a StyledEditorKit (or subclass) installed.
    `static class` | `StyledEditorKit.UnderlineAction` An action to toggle the underline attribute.
    `class` | `TextAction` An Action implementation useful for key bindings that are shared across a number of different text components.

  - ### Uses of Cloneable in javax.swing.text.html

    Classes in javax.swing.text.html that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `HTMLEditorKit` The Swing JEditorPane text component supports different kinds of content via a plug-in mechanism called an EditorKit.
    `static class` | `HTMLEditorKit.HTMLTextAction` An abstract Action providing some convenience methods that may be useful in inserting HTML into an existing document.
    `static class` | `HTMLEditorKit.InsertHTMLTextAction` InsertHTMLTextAction can be used to insert an arbitrary string of HTML into an existing HTML document.
    `class` | `InlineView` Displays the inline element styles based upon css attributes.

  - ### Uses of Cloneable in javax.swing.text.rtf

    Classes in javax.swing.text.rtf that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RTFEditorKit` This is the default implementation of RTF editing functionality.

  - ### Uses of Cloneable in javax.swing.tree

    Classes in javax.swing.tree that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultMutableTreeNode` A `DefaultMutableTreeNode` is a general-purpose node in a tree data structure.
    `class` | `DefaultTreeSelectionModel` Default implementation of TreeSelectionModel.

  - ### Uses of Cloneable in javax.xml.datatype

    Classes in javax.xml.datatype that implement Cloneable
    Modifier and Type | Class and Description
    --- | ---
    `class` | `XMLGregorianCalendar` Representation for W3C XML Schema 1.0 date/time datatypes.

  - ### Uses of Cloneable in org.ietf.jgss

    Subinterfaces of Cloneable in org.ietf.jgss
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `GSSCredential` This interface encapsulates the GSS-API credentials for an entity.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.