This specification is not final and is subject to change. Use is subject to license terms.
Skip navigation links
  • Overview
  • Module
  • Package
  • Class
  • Use
  • Tree
  • Deprecated
  • Index
  • Help
Java SE 14
DRAFT 14-ea+31

Deprecated API

Contents

  • For Removal
  • Interfaces
  • Classes
  • Exceptions
  • Fields
  • Methods
  • Constructors
  • For Removal 
    Element Description
    java.lang.Compiler
    JIT compilers and their technologies vary too widely to be controlled effectively by a standardized interface. As such, many JIT compiler implementations ignore this interface, and are instead controllable by implementation-specific mechanisms such as command-line options. This class is subject to removal in a future version of Java SE.
    java.lang.invoke.ConstantBootstraps()
    java.lang.reflect.Modifier()
    java.lang.Thread.countStackFrames()
    This method was originally designed to count the number of stack frames but the results were never well-defined and it depended on thread-suspension. This method is subject to removal in a future version of Java SE.
    java.lang.Thread.resume()
    This method exists solely for use with Thread.suspend(), which has been deprecated because it is deadlock-prone. For more information, see Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?.
    java.lang.Thread.suspend()
    This method has been deprecated, as it is inherently deadlock-prone. If the target thread holds a lock on the monitor protecting a critical system resource when it is suspended, no thread can access this resource until the target thread is resumed. If the thread that would resume the target thread attempts to lock this monitor prior to calling resume, deadlock results. Such deadlocks typically manifest themselves as "frozen" processes. For more information, see Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?.
    java.lang.ThreadGroup.allowThreadSuspension​(boolean)
    The definition of this call depends on ThreadGroup.suspend(), which is deprecated. Further, the behavior of this call was never specified.
    java.lang.ThreadGroup.resume()
    This method is used solely in conjunction with Thread.suspend and ThreadGroup.suspend, both of which have been deprecated, as they are inherently deadlock-prone. See Thread.suspend() for details.
    java.lang.ThreadGroup.suspend()
    This method is inherently deadlock-prone. See Thread.suspend() for details.
    java.security.Certificate
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.cert.Certificate and related classes.
    java.security.Identity
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    java.security.IdentityScope
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    java.security.Signer
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    javax.management.remote.rmi.RMIConnectorServer.CREDENTIAL_TYPES
    Use RMIConnectorServer.CREDENTIALS_FILTER_PATTERN with a filter pattern string instead.
    javax.net.ssl.HandshakeCompletedEvent.getPeerCertificateChain()
    The HandshakeCompletedEvent.getPeerCertificates() method that returns an array of java.security.cert.Certificate should be used instead.
    javax.net.ssl.SSLSession.getPeerCertificateChain()
    The SSLSession.getPeerCertificates() method that returns an array of java.security.cert.Certificate should be used instead.
    javax.security.cert.Certificate
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateEncodingException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateExpiredException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateNotYetValidException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateParsingException
    Use the classes in java.security.cert instead.
    javax.security.cert.X509Certificate
    Use the classes in java.security.cert instead.
    javax.tools.ToolProvider()
  • Interfaces 
    Interface Description
    java.applet.AppletContext
    The Applet API is deprecated, no replacement.
    java.applet.AppletStub
    The Applet API is deprecated, no replacement.
    java.applet.AudioClip
    The Applet API is deprecated, no replacement.
    java.beans.AppletInitializer
    The Applet API is deprecated. See the java.applet package documentation for further information.
    java.rmi.registry.RegistryHandler
    no replacement
    java.rmi.server.LoaderHandler
    no replacement
    java.rmi.server.RemoteCall
    no replacement.
    java.rmi.server.ServerRef
    No replacement. This interface is unused and is obsolete.
    java.rmi.server.Skeleton
    no replacement. Skeletons are no longer required for remote method calls in the Java 2 platform v1.2 and greater.
    java.security.Certificate
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.cert.Certificate and related classes.
    java.util.logging.LoggingMXBean
    LoggingMXBean is no longer a platform MXBean and is replaced with PlatformLoggingMXBean. It will not register in the platform MBeanServer. Use ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class) instead.
    java.util.Observer
    This interface has been deprecated. See the Observable class for further information.
    org.xml.sax.AttributeList
    This interface has been replaced by the SAX2 Attributes interface, which includes Namespace support.
    org.xml.sax.DocumentHandler
    This interface has been replaced by the SAX2 ContentHandler interface, which includes Namespace support.
    org.xml.sax.Parser
    This interface has been replaced by the SAX2 XMLReader interface, which includes Namespace support.
  • Classes 
    Class Description
    java.applet.Applet
    The Applet API is deprecated, no replacement.
    java.awt.Event
    It is recommended that AWTEvent and its subclasses be used instead
    java.io.LineNumberInputStream
    This class incorrectly assumes that bytes adequately represent characters. As of JDK 1.1, the preferred way to operate on character streams is via the new character-stream classes, which include a class for counting line numbers.
    java.io.StringBufferInputStream
    This class does not properly convert characters into bytes. As of JDK 1.1, the preferred way to create a stream from a string is via the StringReader class.
    java.lang.Compiler
    JIT compilers and their technologies vary too widely to be controlled effectively by a standardized interface. As such, many JIT compiler implementations ignore this interface, and are instead controllable by implementation-specific mechanisms such as command-line options. This class is subject to removal in a future version of Java SE.
    java.rmi.RMISecurityManager
    Use SecurityManager instead.
    java.rmi.server.LogStream
    no replacement
    java.rmi.server.Operation
    no replacement
    java.rmi.server.RemoteStub
    Statically generated stubs are deprecated, since stubs are generated dynamically. See UnicastRemoteObject for information about dynamic stub generation.
    java.security.Identity
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    java.security.IdentityScope
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    java.security.Signer
    This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.KeyStore, the java.security.cert package, and java.security.Principal.
    java.util.Observable
    This class and the Observer interface have been deprecated. The event model supported by Observer and Observable is quite limited, the order of notifications delivered by Observable is unspecified, and state changes are not in one-for-one correspondence with notifications. For a richer event model, consider using the java.beans package. For reliable and ordered messaging among threads, consider using one of the concurrent data structures in the java.util.concurrent package. For reactive streams style programming, see the Flow API.
    javax.accessibility.AccessibleResourceBundle
    This class is deprecated as of version 1.3 of the Java Platform
    javax.management.DefaultLoaderRepository
    Use MBeanServer.getClassLoaderRepository() instead.
    javax.management.loading.DefaultLoaderRepository
    Use MBeanServer.getClassLoaderRepository() instead.
    javax.management.remote.rmi.RMIIIOPServerImpl
    This transport is no longer supported.
    javax.security.cert.Certificate
    Use the classes in java.security.cert instead.
    javax.security.cert.X509Certificate
    Use the classes in java.security.cert instead.
    javax.swing.JApplet
    The Applet API is deprecated, no replacement.
    javax.swing.JComponent.AccessibleJComponent.AccessibleFocusHandler
    This class is no longer used or needed. java.awt.Component.AccessibleAWTComponent provides the same functionality and it is handled in Component.
    javax.swing.plaf.metal.MetalComboBoxUI.MetalComboPopup
    As of Java 2 platform v1.4.
    javax.swing.plaf.metal.MetalFileChooserUI.FileRenderer
    As of JDK version 9. Obsolete class.
    javax.swing.plaf.metal.MetalFileChooserUI.SingleClickListener
    As of JDK version 9. Obsolete class.
    javax.swing.text.DefaultTextUI  
    javax.swing.text.TableView.TableCell
    A table cell can now be any View implementation.
    org.xml.sax.HandlerBase
    This class works with the deprecated DocumentHandler interface. It has been replaced by the SAX2 DefaultHandler class.
    org.xml.sax.helpers.AttributeListImpl
    This class implements a deprecated interface, AttributeList; that interface has been replaced by Attributes, which is implemented in the AttributesImpl helper class.
    org.xml.sax.helpers.ParserFactory
    This class works with the deprecated Parser interface.
    org.xml.sax.helpers.XMLReaderFactory
    It is recommended to use SAXParserFactory instead.
  • Exceptions 
    Exceptions Description
    java.rmi.RMISecurityException
    Use SecurityException instead. Application code should never directly reference this class, and RMISecurityManager no longer throws this subclass of java.lang.SecurityException.
    java.rmi.server.SkeletonMismatchException
    no replacement. Skeletons are no longer required for remote method calls in the Java 2 platform v1.2 and greater.
    java.rmi.server.SkeletonNotFoundException
    no replacement. Skeletons are no longer required for remote method calls in the Java 2 platform v1.2 and greater.
    java.rmi.server.SocketSecurityException
    This class is obsolete. Use ExportException instead.
    java.rmi.ServerRuntimeException
    no replacement
    javax.security.cert.CertificateEncodingException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateExpiredException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateNotYetValidException
    Use the classes in java.security.cert instead.
    javax.security.cert.CertificateParsingException
    Use the classes in java.security.cert instead.
  • Fields 
    Field Description
    java.awt.Cursor.predefined
    As of JDK version 1.7, the Cursor.getPredefinedCursor(int) method should be used instead.
    java.awt.datatransfer.DataFlavor.plainTextFlavor
    as of 1.3. Use DataFlavor.getReaderForText(java.awt.datatransfer.Transferable) instead of Transferable.getTransferData(DataFlavor.plainTextFlavor).
    java.awt.event.InputEvent.ALT_GRAPH_MASK
    It is recommended that ALT_GRAPH_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.event.InputEvent.ALT_MASK
    It is recommended that ALT_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.event.InputEvent.BUTTON1_MASK
    It is recommended that BUTTON1_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.event.InputEvent.BUTTON2_MASK
    It is recommended that BUTTON2_DOWN_MASK and InputEvent.getModifiersEx() be used instead. Note that BUTTON2_MASK has the same value as ALT_MASK.
    java.awt.event.InputEvent.BUTTON3_MASK
    It is recommended that BUTTON3_DOWN_MASK and InputEvent.getModifiersEx() be used instead. Note that BUTTON3_MASK has the same value as META_MASK.
    java.awt.event.InputEvent.CTRL_MASK
    It is recommended that CTRL_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.event.InputEvent.META_MASK
    It is recommended that META_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.event.InputEvent.SHIFT_MASK
    It is recommended that SHIFT_DOWN_MASK and InputEvent.getModifiersEx() be used instead
    java.awt.Frame.CROSSHAIR_CURSOR
    replaced by Cursor.CROSSHAIR_CURSOR.
    java.awt.Frame.DEFAULT_CURSOR
    replaced by Cursor.DEFAULT_CURSOR.
    java.awt.Frame.E_RESIZE_CURSOR
    replaced by Cursor.E_RESIZE_CURSOR.
    java.awt.Frame.HAND_CURSOR
    replaced by Cursor.HAND_CURSOR.
    java.awt.Frame.MOVE_CURSOR
    replaced by Cursor.MOVE_CURSOR.
    java.awt.Frame.N_RESIZE_CURSOR
    replaced by Cursor.N_RESIZE_CURSOR.
    java.awt.Frame.NE_RESIZE_CURSOR
    replaced by Cursor.NE_RESIZE_CURSOR.
    java.awt.Frame.NW_RESIZE_CURSOR
    replaced by Cursor.NW_RESIZE_CURSOR.
    java.awt.Frame.S_RESIZE_CURSOR
    replaced by Cursor.S_RESIZE_CURSOR.
    java.awt.Frame.SE_RESIZE_CURSOR
    replaced by Cursor.SE_RESIZE_CURSOR.
    java.awt.Frame.SW_RESIZE_CURSOR
    replaced by Cursor.SW_RESIZE_CURSOR.
    java.awt.Frame.TEXT_CURSOR
    replaced by Cursor.TEXT_CURSOR.
    java.awt.Frame.W_RESIZE_CURSOR
    replaced by Cursor.W_RESIZE_CURSOR.
    java.awt.Frame.WAIT_CURSOR
    replaced by Cursor.WAIT_CURSOR.
    java.lang.Character.UnicodeBlock.SURROGATES_AREA
    Instead of SURROGATES_AREA, use Character.UnicodeBlock.HIGH_SURROGATES, Character.UnicodeBlock.HIGH_PRIVATE_USE_SURROGATES, and Character.UnicodeBlock.LOW_SURROGATES. These constants match the block definitions of the Unicode Standard. The Character.UnicodeBlock.of(char) and Character.UnicodeBlock.of(int) methods return the standard constants.
    java.math.BigDecimal.ROUND_CEILING
    Use RoundingMode.CEILING instead.
    java.math.BigDecimal.ROUND_DOWN
    Use RoundingMode.DOWN instead.
    java.math.BigDecimal.ROUND_FLOOR
    Use RoundingMode.FLOOR instead.
    java.math.BigDecimal.ROUND_HALF_DOWN
    Use RoundingMode.HALF_DOWN instead.
    java.math.BigDecimal.ROUND_HALF_EVEN
    Use RoundingMode.HALF_EVEN instead.
    java.math.BigDecimal.ROUND_HALF_UP
    Use RoundingMode.HALF_UP instead.
    java.math.BigDecimal.ROUND_UNNECESSARY
    Use RoundingMode.UNNECESSARY instead.
    java.math.BigDecimal.ROUND_UP
    Use RoundingMode.UP instead.
    java.net.HttpURLConnection.HTTP_SERVER_ERROR
    it is misplaced and shouldn't have existed.
    java.rmi.server.RemoteRef.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.rmi.server.ServerRef.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.DSAPrivateKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.DSAPublicKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.ECPrivateKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.ECPublicKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.RSAMultiPrimePrivateCrtKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.RSAPrivateCrtKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.RSAPrivateKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.interfaces.RSAPublicKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.Key.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.PrivateKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.security.PublicKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    java.util.jar.Attributes.Name.EXTENSION_INSTALLATION
    Extension mechanism is no longer supported.
    java.util.jar.Attributes.Name.IMPLEMENTATION_URL
    Extension mechanism is no longer supported.
    java.util.jar.Attributes.Name.IMPLEMENTATION_VENDOR_ID
    Extension mechanism is no longer supported.
    java.util.logging.Logger.global
    Initialization of this field is prone to deadlocks. The field must be initialized by the Logger class initialization which may cause deadlocks with the LogManager class initialization. In such cases two class initialization wait for each other to complete. The preferred way to get the global logger object is via the call Logger.getGlobal(). For compatibility with old JDK versions where the Logger.getGlobal() is not available use the call Logger.getLogger(Logger.GLOBAL_LOGGER_NAME) or Logger.getLogger("global").
    javax.crypto.interfaces.DHPrivateKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.crypto.interfaces.DHPublicKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.crypto.interfaces.PBEKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.crypto.SecretKey.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.imageio.spi.ImageReaderSpi.STANDARD_INPUT_TYPE
    Instead of using this field, directly create the equivalent array { ImageInputStream.class }.
    javax.imageio.spi.ImageWriterSpi.STANDARD_OUTPUT_TYPE
    Instead of using this field, directly create the equivalent array { ImageOutputStream.class }.
    javax.management.monitor.Monitor.alreadyNotified
    equivalent to Monitor.alreadyNotifieds[0].
    javax.management.monitor.Monitor.dbgTag
    No replacement.
    javax.management.openmbean.OpenType.ALLOWED_CLASSNAMES
    Use ALLOWED_CLASSNAMES_LIST instead.
    javax.management.remote.rmi.RMIConnectorServer.CREDENTIAL_TYPES
    Use RMIConnectorServer.CREDENTIALS_FILTER_PATTERN with a filter pattern string instead.
    javax.naming.Context.APPLET
    An environment property with this name is ignored while constructing an initial context. This constant was originally used as a property name to specify an Applet to retrieve parameters from, when creating an initial context. Currently any applet properties that need to be passed to an initial context should be copied into the environment hashtable:
    
         Hashtable env = new Hashtable();
         env.put(Context.INITIAL_CONTEXT_FACTORY,
           ((Applet) this).getParameter(Context.INITIAL_CONTEXT_FACTORY));
         env.put(Context.PROVIDER_URL,
           ((Applet) this).getParameter(Context.PROVIDER_URL));
         // ... other properties ...
    
         Context ctx = new InitialContext(env);
     
    javax.naming.directory.Attribute.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.naming.Name.serialVersionUID
    A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
    javax.sql.rowset.CachedRowSet.COMMIT_ON_ACCEPT_CHANGES
    Because this field is final (it is part of an interface), its value cannot be changed.
    javax.swing.ImageIcon.component
    since 1.8
    javax.swing.ImageIcon.tracker
    since 1.8
    javax.swing.JComponent.AccessibleJComponent.accessibleFocusHandler
    javax.swing.JViewport.backingStore
    As of Java 2 platform v1.3
    javax.swing.plaf.basic.BasicDesktopPaneUI.closeKey
    As of 1.3.
    javax.swing.plaf.basic.BasicDesktopPaneUI.maximizeKey
    As of 1.3.
    javax.swing.plaf.basic.BasicDesktopPaneUI.minimizeKey
    As of 1.3.
    javax.swing.plaf.basic.BasicDesktopPaneUI.navigateKey
    As of 1.3.
    javax.swing.plaf.basic.BasicDesktopPaneUI.navigateKey2
    As of 1.3.
    javax.swing.plaf.basic.BasicInternalFrameUI.openMenuKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.dividerResizeToggleKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.downKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.endKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.homeKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.keyboardDownRightListener
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.keyboardEndListener
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.keyboardHomeListener
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.keyboardResizeToggleListener
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.keyboardUpLeftListener
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.leftKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.rightKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.upKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicTabbedPaneUI.downKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicTabbedPaneUI.leftKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicTabbedPaneUI.rightKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicTabbedPaneUI.upKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicToolBarUI.downKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicToolBarUI.leftKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicToolBarUI.rightKey
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicToolBarUI.upKey
    As of Java 2 platform v1.3.
    javax.swing.table.TableColumn.resizedPostingDisableCount
    as of Java 2 platform v1.3
    javax.swing.text.html.FormView.RESET
    As of 1.3, value comes from UIManager UIManager property FormView.resetButtonText
    javax.swing.text.html.FormView.SUBMIT
    As of 1.3, value now comes from UIManager property FormView.submitButtonText
  • Methods 
    Method Description
    java.awt.AWTKeyStroke.registerSubclass​(Class<?>)  
    java.awt.BorderLayout.addLayoutComponent​(String, Component)
    replaced by addLayoutComponent(Component, Object).
    java.awt.CardLayout.addLayoutComponent​(String, Component)
    replaced by addLayoutComponent(Component, Object).
    java.awt.CheckboxGroup.getCurrent()
    As of JDK version 1.1, replaced by getSelectedCheckbox().
    java.awt.CheckboxGroup.setCurrent​(Checkbox)
    As of JDK version 1.1, replaced by setSelectedCheckbox(Checkbox).
    java.awt.Choice.countItems()
    As of JDK version 1.1, replaced by getItemCount().
    java.awt.color.ICC_Profile.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    java.awt.Component.action​(Event, Object)
    As of JDK version 1.1, should register this component as ActionListener on component which fires action events.
    java.awt.Component.bounds()
    As of JDK version 1.1, replaced by getBounds().
    java.awt.Component.deliverEvent​(Event)
    As of JDK version 1.1, replaced by dispatchEvent(AWTEvent e).
    java.awt.Component.disable()
    As of JDK version 1.1, replaced by setEnabled(boolean).
    java.awt.Component.enable()
    As of JDK version 1.1, replaced by setEnabled(boolean).
    java.awt.Component.gotFocus​(Event, Object)
    As of JDK version 1.1, replaced by processFocusEvent(FocusEvent).
    java.awt.Component.handleEvent​(Event)
    As of JDK version 1.1 replaced by processEvent(AWTEvent).
    java.awt.Component.hide()
    As of JDK version 1.1, replaced by setVisible(boolean).
    java.awt.Component.inside​(int, int)
    As of JDK version 1.1, replaced by contains(int, int).
    java.awt.Component.isFocusTraversable()
    As of 1.4, replaced by isFocusable().
    java.awt.Component.keyDown​(Event, int)
    As of JDK version 1.1, replaced by processKeyEvent(KeyEvent).
    java.awt.Component.keyUp​(Event, int)
    As of JDK version 1.1, replaced by processKeyEvent(KeyEvent).
    java.awt.Component.layout()
    As of JDK version 1.1, replaced by doLayout().
    java.awt.Component.locate​(int, int)
    As of JDK version 1.1, replaced by getComponentAt(int, int).
    java.awt.Component.location()
    As of JDK version 1.1, replaced by getLocation().
    java.awt.Component.lostFocus​(Event, Object)
    As of JDK version 1.1, replaced by processFocusEvent(FocusEvent).
    java.awt.Component.minimumSize()
    As of JDK version 1.1, replaced by getMinimumSize().
    java.awt.Component.mouseDown​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseEvent(MouseEvent).
    java.awt.Component.mouseDrag​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseMotionEvent(MouseEvent).
    java.awt.Component.mouseEnter​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseEvent(MouseEvent).
    java.awt.Component.mouseExit​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseEvent(MouseEvent).
    java.awt.Component.mouseMove​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseMotionEvent(MouseEvent).
    java.awt.Component.mouseUp​(Event, int, int)
    As of JDK version 1.1, replaced by processMouseEvent(MouseEvent).
    java.awt.Component.move​(int, int)
    As of JDK version 1.1, replaced by setLocation(int, int).
    java.awt.Component.nextFocus()
    As of JDK version 1.1, replaced by transferFocus().
    java.awt.Component.postEvent​(Event)
    As of JDK version 1.1, replaced by dispatchEvent(AWTEvent).
    java.awt.Component.preferredSize()
    As of JDK version 1.1, replaced by getPreferredSize().
    java.awt.Component.reshape​(int, int, int, int)
    As of JDK version 1.1, replaced by setBounds(int, int, int, int).
    java.awt.Component.resize​(int, int)
    As of JDK version 1.1, replaced by setSize(int, int).
    java.awt.Component.show()
    As of JDK version 1.1, replaced by setVisible(boolean).
    java.awt.Component.size()
    As of JDK version 1.1, replaced by getSize().
    java.awt.ComponentOrientation.getOrientation​(ResourceBundle)
    As of J2SE 1.4, use ComponentOrientation.getOrientation(java.util.Locale).
    java.awt.Container.countComponents()
    As of JDK version 1.1, replaced by getComponentCount().
    java.awt.Container.deliverEvent​(Event)
    As of JDK version 1.1, replaced by dispatchEvent(AWTEvent e)
    java.awt.Container.insets()
    As of JDK version 1.1, replaced by getInsets().
    java.awt.Container.layout()
    As of JDK version 1.1, replaced by doLayout().
    java.awt.Container.locate​(int, int)
    As of JDK version 1.1, replaced by getComponentAt(int, int).
    java.awt.Container.minimumSize()
    As of JDK version 1.1, replaced by getMinimumSize().
    java.awt.Container.preferredSize()
    As of JDK version 1.1, replaced by getPreferredSize().
    java.awt.datatransfer.DataFlavor.equals​(String)
    As inconsistent with hashCode() contract, use DataFlavor.isMimeTypeEqual(String) instead.
    java.awt.datatransfer.DataFlavor.normalizeMimeType​(String)
    This method is never invoked by this implementation from 1.1 onwards
    java.awt.datatransfer.DataFlavor.normalizeMimeTypeParameter​(String, String)
    This method is never invoked by this implementation from 1.1 onwards
    java.awt.Dialog.hide()
    As of JDK version 1.5, replaced by setVisible(boolean).
    java.awt.Dialog.show()
    As of JDK version 1.5, replaced by setVisible(boolean).
    java.awt.event.InputEvent.getModifiers()
    It is recommended that extended modifier keys and InputEvent.getModifiersEx() be used instead
    java.awt.event.KeyEvent.getKeyModifiersText​(int)
    It is recommended that extended modifier keys and InputEvent.getModifiersExText(int) be used instead
    java.awt.event.KeyEvent.setModifiers​(int)
    as of JDK1.1.4
    java.awt.FontMetrics.getMaxDecent()
    As of JDK version 1.1.1, replaced by getMaxDescent().
    java.awt.Frame.getCursorType()
    As of JDK version 1.1, replaced by Component.getCursor().
    java.awt.Frame.setCursor​(int)
    As of JDK version 1.1, replaced by Component.setCursor(Cursor).
    java.awt.Graphics.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    java.awt.Graphics.getClipRect()
    As of JDK version 1.1, replaced by getClipBounds().
    java.awt.image.ColorModel.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    java.awt.image.IndexColorModel.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    java.awt.image.renderable.RenderContext.concetenateTransform​(AffineTransform)
    replaced by concatenateTransform(AffineTransform).
    java.awt.image.renderable.RenderContext.preConcetenateTransform​(AffineTransform)
    replaced by preConcatenateTransform(AffineTransform).
    java.awt.List.addItem​(String)
    replaced by add(String).
    java.awt.List.allowsMultipleSelections()
    As of JDK version 1.1, replaced by isMultipleMode().
    java.awt.List.clear()
    As of JDK version 1.1, replaced by removeAll().
    java.awt.List.countItems()
    As of JDK version 1.1, replaced by getItemCount().
    java.awt.List.delItem​(int)
    replaced by remove(String) and remove(int).
    java.awt.List.delItems​(int, int)
    As of JDK version 1.1, Not for public use in the future. This method is expected to be retained only as a package private method.
    java.awt.List.isSelected​(int)
    As of JDK version 1.1, replaced by isIndexSelected(int).
    java.awt.List.minimumSize​(int)
    As of JDK version 1.1, replaced by getMinimumSize(int).
    java.awt.List.preferredSize​(int)
    As of JDK version 1.1, replaced by getPreferredSize(int).
    java.awt.List.setMultipleSelections​(boolean)
    As of JDK version 1.1, replaced by setMultipleMode(boolean).
    java.awt.Menu.countItems()
    As of JDK version 1.1, replaced by getItemCount().
    java.awt.MenuBar.countMenus()
    As of JDK version 1.1, replaced by getMenuCount().
    java.awt.MenuComponent.postEvent​(Event)
    As of JDK version 1.1, replaced by dispatchEvent.
    java.awt.MenuContainer.postEvent​(Event)
    As of JDK version 1.1 replaced by dispatchEvent(AWTEvent).
    java.awt.MenuItem.disable()
    As of JDK version 1.1, replaced by setEnabled(boolean).
    java.awt.MenuItem.enable()
    As of JDK version 1.1, replaced by setEnabled(boolean).
    java.awt.Polygon.getBoundingBox()
    As of JDK version 1.1, replaced by getBounds().
    java.awt.Polygon.inside​(int, int)
    As of JDK version 1.1, replaced by contains(int, int).
    java.awt.PrintJob.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    java.awt.Rectangle.inside​(int, int)
    As of JDK version 1.1, replaced by contains(int, int).
    java.awt.Rectangle.move​(int, int)
    As of JDK version 1.1, replaced by setLocation(int, int).
    java.awt.Rectangle.reshape​(int, int, int, int)
    As of JDK version 1.1, replaced by setBounds(int, int, int, int).
    java.awt.Rectangle.resize​(int, int)
    As of JDK version 1.1, replaced by setSize(int, int).
    java.awt.Scrollbar.getLineIncrement()
    As of JDK version 1.1, replaced by getUnitIncrement().
    java.awt.Scrollbar.getPageIncrement()
    As of JDK version 1.1, replaced by getBlockIncrement().
    java.awt.Scrollbar.getVisible()
    As of JDK version 1.1, replaced by getVisibleAmount().
    java.awt.Scrollbar.setLineIncrement​(int)
    As of JDK version 1.1, replaced by setUnitIncrement(int).
    java.awt.Scrollbar.setPageIncrement​(int)
    As of JDK version 1.1, replaced by setBlockIncrement().
    java.awt.ScrollPane.layout()
    As of JDK version 1.1, replaced by doLayout().
    java.awt.TextArea.appendText​(String)
    As of JDK version 1.1, replaced by append(String).
    java.awt.TextArea.insertText​(String, int)
    As of JDK version 1.1, replaced by insert(String, int).
    java.awt.TextArea.minimumSize​(int, int)
    As of JDK version 1.1, replaced by getMinimumSize(int, int).
    java.awt.TextArea.preferredSize​(int, int)
    As of JDK version 1.1, replaced by getPreferredSize(int, int).
    java.awt.TextArea.replaceText​(String, int, int)
    As of JDK version 1.1, replaced by replaceRange(String, int, int).
    java.awt.TextField.minimumSize​(int)
    As of JDK version 1.1, replaced by getMinimumSize(int).
    java.awt.TextField.preferredSize​(int)
    As of JDK version 1.1, replaced by getPreferredSize(int).
    java.awt.TextField.setEchoCharacter​(char)
    As of JDK version 1.1, replaced by setEchoChar(char).
    java.awt.Toolkit.getFontList()
    see GraphicsEnvironment.getAvailableFontFamilyNames()
    java.awt.Toolkit.getFontMetrics​(Font)
    As of JDK version 1.2, replaced by the Font method getLineMetrics.
    java.awt.Toolkit.getMenuShortcutKeyMask()
    It is recommended that extended modifier keys and Toolkit.getMenuShortcutKeyMaskEx() be used instead
    java.awt.Window.applyResourceBundle​(ResourceBundle)
    As of J2SE 1.4, replaced by Component.applyComponentOrientation.
    java.awt.Window.hide()
    As of JDK version 1.5, replaced by Window.setVisible(boolean).
    java.awt.Window.postEvent​(Event)
    As of JDK version 1.1 replaced by dispatchEvent(AWTEvent).
    java.awt.Window.reshape​(int, int, int, int)
    As of JDK version 1.1, replaced by setBounds(int, int, int, int).
    java.awt.Window.show()
    As of JDK version 1.5, replaced by Window.setVisible(boolean).
    java.beans.Beans.instantiate​(ClassLoader, String, BeanContext, AppletInitializer)
    It is recommended to use Beans.instantiate(ClassLoader, String, BeanContext), because the Applet API is deprecated. See the java.applet package documentation for further information.
    java.io.ByteArrayOutputStream.toString​(int)
    This method does not properly convert bytes into characters. As of JDK 1.1, the preferred way to do this is via the ByteArrayOutputStream.toString(String charsetName) or ByteArrayOutputStream.toString(Charset charset) method, which takes an encoding-name or charset argument, or the toString() method, which uses the platform's default character encoding.
    java.io.DataInputStream.readLine()
    This method does not properly convert bytes to characters. As of JDK 1.1, the preferred way to read lines of text is via the BufferedReader.readLine() method. Programs that use the DataInputStream class to read lines can be converted to use the BufferedReader class by replacing code of the form:
         DataInputStream d = new DataInputStream(in);
     
    with:
         BufferedReader d
              = new BufferedReader(new InputStreamReader(in));
     
    java.io.File.toURL()
    This method does not automatically escape characters that are illegal in URLs. It is recommended that new code convert an abstract pathname into a URL by first converting it into a URI, via the toURI method, and then converting the URI into a URL via the URI.toURL method.
    java.io.ObjectInputStream.readLine()
    This method does not properly convert bytes to characters. see DataInputStream for the details and alternatives.
    java.io.ObjectOutputStream.PutField.write​(ObjectOutput)
    This method does not write the values contained by this PutField object in a proper format, and may result in corruption of the serialization stream. The correct way to write PutField data is by calling the ObjectOutputStream.writeFields() method.
    java.lang.Character.isJavaLetter​(char)
    Replaced by isJavaIdentifierStart(char).
    java.lang.Character.isJavaLetterOrDigit​(char)
    Replaced by isJavaIdentifierPart(char).
    java.lang.Character.isSpace​(char)
    Replaced by isWhitespace(char).
    java.lang.Class.newInstance()
    This method propagates any exception thrown by the nullary constructor, including a checked exception. Use of this method effectively bypasses the compile-time exception checking that would otherwise be performed by the compiler. The Constructor.newInstance method avoids this problem by wrapping any exception thrown by the constructor in a (checked) InvocationTargetException.

    The call

    
     clazz.newInstance()
     
    can be replaced by
    
     clazz.getDeclaredConstructor().newInstance()
     
    The latter sequence of calls is inferred to be able to throw the additional exception types InvocationTargetException and NoSuchMethodException. Both of these exception types are subclasses of ReflectiveOperationException.
    java.lang.ClassLoader.defineClass​(byte[], int, int)
    Replaced by defineClass(String, byte[], int, int)
    java.lang.ClassLoader.getPackage​(String)
    If multiple class loaders delegate to each other and define classes with the same package name, and one such loader relies on the lookup behavior of getPackage to return a Package from a parent loader, then the properties exposed by the Package may not be as expected in the rest of the program. For example, the Package will only expose annotations from the package-info.class file defined by the parent loader, even if annotations exist in a package-info.class file defined by a child loader. A more robust approach is to use the ClassLoader.getDefinedPackage(java.lang.String) method which returns a Package for the specified class loader.
    java.lang.invoke.MethodHandles.Lookup.hasPrivateAccess()
    This method was originally designed to test PRIVATE access that implies full privilege access but MODULE access has since become independent of PRIVATE access. It is recommended to call MethodHandles.Lookup.hasFullPrivilegeAccess() instead.
    java.lang.Object.finalize()
    The finalization mechanism is inherently problematic. Finalization can lead to performance issues, deadlocks, and hangs. Errors in finalizers can lead to resource leaks; there is no way to cancel finalization if it is no longer necessary; and no ordering is specified among calls to finalize methods of different objects. Furthermore, there are no guarantees regarding the timing of finalization. The finalize method might be called on a finalizable object only after an indefinite delay, if at all. Classes whose instances hold non-heap resources should provide a method to enable explicit release of those resources, and they should also implement AutoCloseable if appropriate. The Cleaner and PhantomReference provide more flexible and efficient ways to release resources when an object becomes unreachable.
    java.lang.Package.getPackage​(String)
    If multiple class loaders delegate to each other and define classes with the same package name, and one such loader relies on the lookup behavior of getPackage to return a Package from a parent loader, then the properties exposed by the Package may not be as expected in the rest of the program. For example, the Package will only expose annotations from the package-info.class file defined by the parent loader, even if annotations exist in a package-info.class file defined by a child loader. A more robust approach is to use the ClassLoader.getDefinedPackage(java.lang.String) method which returns a Package for the specified class loader.
    java.lang.reflect.AccessibleObject.isAccessible()
    This method is deprecated because its name hints that it checks if the reflected object is accessible when it actually indicates if the checks for Java language access control are suppressed. This method may return false on a reflected object that is accessible to the caller. To test if this reflected object is accessible, it should use AccessibleObject.canAccess(Object).
    java.lang.reflect.Proxy.getProxyClass​(ClassLoader, Class<?>...)
    Proxy classes generated in a named module are encapsulated and not accessible to code outside its module. Constructor.newInstance will throw IllegalAccessException when it is called on an inaccessible proxy class. Use Proxy.newProxyInstance(ClassLoader, Class[], InvocationHandler) to create a proxy instance instead.
    java.lang.Runtime.Version.major()
    As of Java SE 10, the first element of a version number is not the major-release number but the feature-release counter, incremented for every time-based release. Use the Runtime.Version.feature() method in preference to this method. For compatibility, this method returns the value of the feature element.
    java.lang.Runtime.Version.minor()
    As of Java SE 10, the second element of a version number is not the minor-release number but the interim-release counter, incremented for every interim release. Use the Runtime.Version.interim() method in preference to this method. For compatibility, this method returns the value of the interim element, or zero if it is absent.
    java.lang.Runtime.Version.security()
    As of Java SE 10, the third element of a version number is not the security level but the update-release counter, incremented for every update release. Use the Runtime.Version.update() method in preference to this method. For compatibility, this method returns the value of the update element, or zero if it is absent.
    java.lang.SecurityManager.checkMulticast​(InetAddress, byte)
    Use #checkPermission(java.security.Permission) instead
    java.lang.String.getBytes​(int, int, byte[], int)
    This method does not properly convert characters into bytes. As of JDK 1.1, the preferred way to do this is via the String.getBytes() method, which uses the platform's default charset.
    java.lang.Thread.countStackFrames()
    This method was originally designed to count the number of stack frames but the results were never well-defined and it depended on thread-suspension. This method is subject to removal in a future version of Java SE.
    java.lang.Thread.resume()
    This method exists solely for use with Thread.suspend(), which has been deprecated because it is deadlock-prone. For more information, see Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?.
    java.lang.Thread.stop()
    This method is inherently unsafe. Stopping a thread with Thread.stop causes it to unlock all of the monitors that it has locked (as a natural consequence of the unchecked ThreadDeath exception propagating up the stack). If any of the objects previously protected by these monitors were in an inconsistent state, the damaged objects become visible to other threads, potentially resulting in arbitrary behavior. Many uses of stop should be replaced by code that simply modifies some variable to indicate that the target thread should stop running. The target thread should check this variable regularly, and return from its run method in an orderly fashion if the variable indicates that it is to stop running. If the target thread waits for long periods (on a condition variable, for example), the interrupt method should be used to interrupt the wait. For more information, see Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?.
    java.lang.Thread.suspend()
    This method has been deprecated, as it is inherently deadlock-prone. If the target thread holds a lock on the monitor protecting a critical system resource when it is suspended, no thread can access this resource until the target thread is resumed. If the thread that would resume the target thread attempts to lock this monitor prior to calling resume, deadlock results. Such deadlocks typically manifest themselves as "frozen" processes. For more information, see Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?.
    java.lang.ThreadGroup.allowThreadSuspension​(boolean)
    The definition of this call depends on ThreadGroup.suspend(), which is deprecated. Further, the behavior of this call was never specified.
    java.lang.ThreadGroup.resume()
    This method is used solely in conjunction with Thread.suspend and ThreadGroup.suspend, both of which have been deprecated, as they are inherently deadlock-prone. See Thread.suspend() for details.
    java.lang.ThreadGroup.stop()
    This method is inherently unsafe. See Thread.stop() for details.
    java.lang.ThreadGroup.suspend()
    This method is inherently deadlock-prone. See Thread.suspend() for details.
    java.math.BigDecimal.divide​(BigDecimal, int, int)
    The method BigDecimal.divide(BigDecimal, int, RoundingMode) should be used in preference to this legacy method.
    java.math.BigDecimal.setScale​(int, int)
    The method BigDecimal.setScale(int, RoundingMode) should be used in preference to this legacy method.
    java.net.DatagramSocketImpl.getTTL()
    use getTimeToLive instead.
    java.net.DatagramSocketImpl.setTTL​(byte)
    use setTimeToLive instead.
    java.net.MulticastSocket.getInterface()
    The network interface may not be uniquely identified by the InetAddress returned. Use MulticastSocket.getNetworkInterface() instead.
    java.net.MulticastSocket.getLoopbackMode()
    Use DatagramSocket.getOption(SocketOption) with StandardSocketOptions.IP_MULTICAST_LOOP instead.
    java.net.MulticastSocket.getTTL()
    use the getTimeToLive method instead, which returns an int instead of a byte.
    java.net.MulticastSocket.joinGroup​(InetAddress)
    This method does not accept the network interface on which to join the multicast group. Use MulticastSocket.joinGroup(SocketAddress, NetworkInterface) instead.
    java.net.MulticastSocket.leaveGroup​(InetAddress)
    This method does not accept the network interface on which to leave the multicast group. Use MulticastSocket.leaveGroup(SocketAddress, NetworkInterface) instead.
    java.net.MulticastSocket.send​(DatagramPacket, byte)
    Use the following code or its equivalent instead: ...... int ttl = mcastSocket.getTimeToLive(); mcastSocket.setTimeToLive(newttl); mcastSocket.send(p); mcastSocket.setTimeToLive(ttl); ......
    java.net.MulticastSocket.setInterface​(InetAddress)
    The InetAddress may not uniquely identify the network interface. Use MulticastSocket.setNetworkInterface(NetworkInterface) instead.
    java.net.MulticastSocket.setLoopbackMode​(boolean)
    Use DatagramSocket.setOption(SocketOption, Object) with StandardSocketOptions.IP_MULTICAST_LOOP instead. The loopback mode is enabled by default, MulticastSocket.setOption(StandardSocketOptions.IP_MULTICAST_LOOP, false) disables it.
    java.net.MulticastSocket.setTTL​(byte)
    use the setTimeToLive method instead, which uses int instead of byte as the type for ttl.
    java.net.URLConnection.getDefaultRequestProperty​(String)
    The instance specific getRequestProperty method should be used after an appropriate instance of URLConnection is obtained.
    java.net.URLConnection.setDefaultRequestProperty​(String, String)
    The instance specific setRequestProperty method should be used after an appropriate instance of URLConnection is obtained. Invoking this method will have no effect.
    java.net.URLDecoder.decode​(String)
    The resulting string may vary depending on the platform's default encoding. Instead, use the decode(String,String) method to specify the encoding.
    java.net.URLEncoder.encode​(String)
    The resulting string may vary depending on the platform's default encoding. Instead, use the encode(String,String) method to specify the encoding.
    java.net.URLStreamHandler.setURL​(URL, String, String, int, String, String)
    Use setURL(URL, String, String, int, String, String, String, String);
    java.rmi.dgc.VMID.isUnique()  
    java.rmi.registry.RegistryHandler.registryImpl​(int)
    no replacement. As of the Java 2 platform v1.2, RMI no longer uses the RegistryHandler to obtain the registry's implementation.
    java.rmi.registry.RegistryHandler.registryStub​(String, int)
    no replacement. As of the Java 2 platform v1.2, RMI no longer uses the RegistryHandler to obtain the registry's stub.
    java.rmi.server.LoaderHandler.getSecurityContext​(ClassLoader)
    no replacement
    java.rmi.server.LoaderHandler.loadClass​(String)
    no replacement
    java.rmi.server.LogStream.getDefaultStream()
    no replacement
    java.rmi.server.LogStream.getOutputStream()
    no replacement
    java.rmi.server.LogStream.log​(String)
    no replacement
    java.rmi.server.LogStream.parseLevel​(String)
    no replacement
    java.rmi.server.LogStream.setDefaultStream​(PrintStream)
    no replacement
    java.rmi.server.LogStream.setOutputStream​(OutputStream)
    no replacement
    java.rmi.server.LogStream.toString()
    no replacement
    java.rmi.server.LogStream.write​(int)
    no replacement
    java.rmi.server.Operation.getOperation()
    no replacement
    java.rmi.server.Operation.toString()
    no replacement
    java.rmi.server.RemoteCall.done()
    no replacement
    java.rmi.server.RemoteCall.executeCall()
    no replacement
    java.rmi.server.RemoteCall.getInputStream()
    no replacement
    java.rmi.server.RemoteCall.getOutputStream()
    no replacement
    java.rmi.server.RemoteCall.getResultStream​(boolean)
    no replacement
    java.rmi.server.RemoteCall.releaseInputStream()
    no replacement
    java.rmi.server.RemoteCall.releaseOutputStream()
    no replacement
    java.rmi.server.RemoteRef.done​(RemoteCall)
    1.2 style stubs no longer use this method. Instead of using a sequence of method calls to the remote reference (newCall, invoke, and done), a stub uses a single method, invoke(Remote, Method, Object[], int), on the remote reference to carry out parameter marshalling, remote method executing and unmarshalling of the return value.
    java.rmi.server.RemoteRef.invoke​(RemoteCall)
    1.2 style stubs no longer use this method. Instead of using a sequence of method calls to the remote reference (newCall, invoke, and done), a stub uses a single method, invoke(Remote, Method, Object[], int), on the remote reference to carry out parameter marshalling, remote method executing and unmarshalling of the return value.
    java.rmi.server.RemoteRef.newCall​(RemoteObject, Operation[], int, long)
    1.2 style stubs no longer use this method. Instead of using a sequence of method calls on the stub's the remote reference (newCall, invoke, and done), a stub uses a single method, invoke(Remote, Method, Object[], int), on the remote reference to carry out parameter marshalling, remote method executing and unmarshalling of the return value.
    java.rmi.server.RemoteStub.setRef​(RemoteStub, RemoteRef)
    No replacement. The setRef method was intended for setting the remote reference of a remote stub. This is unnecessary, since RemoteStubs can be created and initialized with a remote reference through use of the RemoteStub(RemoteRef) constructor.
    java.rmi.server.RMIClassLoader.getSecurityContext​(ClassLoader)
    no replacement. As of the Java 2 platform v1.2, RMI no longer uses this method to obtain a class loader's security context.
    java.rmi.server.RMIClassLoader.loadClass​(String)
    replaced by loadClass(String,String) method
    java.rmi.server.Skeleton.dispatch​(Remote, RemoteCall, int, long)
    no replacement
    java.rmi.server.Skeleton.getOperations()
    no replacement
    java.rmi.server.UnicastRemoteObject.exportObject​(Remote)
    This method is deprecated because it supports only static stubs. Use exportObject(Remote, port) or exportObject(Remote, port, csf, ssf) instead.
    java.security.Provider.getVersion()
    use Provider.getVersionStr() instead.
    java.security.Security.getAlgorithmProperty​(String, String)
    This method used to return the value of a proprietary property in the master file of the "SUN" Cryptographic Service Provider in order to determine how to parse algorithm-specific parameters. Use the new provider-based and algorithm-independent AlgorithmParameters and KeyFactory engine classes (introduced in the J2SE version 1.2 platform) instead.
    java.security.Signature.getParameter​(String)  
    java.security.Signature.setParameter​(String, Object)
    Use setParameter.
    java.security.SignatureSpi.engineGetParameter​(String)  
    java.security.SignatureSpi.engineSetParameter​(String, Object)
    Replaced by engineSetParameter.
    java.sql.CallableStatement.getBigDecimal​(int, int)
    use getBigDecimal(int parameterIndex) or getBigDecimal(String parameterName)
    java.sql.Date.getHours()  
    java.sql.Date.getMinutes()  
    java.sql.Date.getSeconds()  
    java.sql.Date.setHours​(int)  
    java.sql.Date.setMinutes​(int)  
    java.sql.Date.setSeconds​(int)  
    java.sql.DriverManager.getLogStream()
    Use getLogWriter
    java.sql.DriverManager.setLogStream​(PrintStream)
    Use setLogWriter
    java.sql.PreparedStatement.setUnicodeStream​(int, InputStream, int)
    Use setCharacterStream
    java.sql.ResultSet.getBigDecimal​(int, int)
    Use getBigDecimal(int columnIndex) or getBigDecimal(String columnLabel)
    java.sql.ResultSet.getUnicodeStream​(int)
    use getCharacterStream in place of getUnicodeStream
    java.sql.Time.getDate()  
    java.sql.Time.getDay()  
    java.sql.Time.getMonth()  
    java.sql.Time.getYear()  
    java.sql.Time.setDate​(int)  
    java.sql.Time.setMonth​(int)  
    java.sql.Time.setYear​(int)  
    java.util.concurrent.atomic.AtomicBoolean.weakCompareAndSet​(boolean, boolean)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicBoolean.compareAndExchange(boolean, boolean) and AtomicBoolean.compareAndSet(boolean, boolean)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicBoolean.weakCompareAndSetPlain(boolean, boolean) be used instead.
    java.util.concurrent.atomic.AtomicInteger.weakCompareAndSet​(int, int)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicInteger.compareAndExchange(int, int) and AtomicInteger.compareAndSet(int, int)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicInteger.weakCompareAndSetPlain(int, int) be used instead.
    java.util.concurrent.atomic.AtomicIntegerArray.weakCompareAndSet​(int, int, int)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicIntegerArray.compareAndExchange(int, int, int) and AtomicIntegerArray.compareAndSet(int, int, int)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicIntegerArray.weakCompareAndSetPlain(int, int, int) be used instead.
    java.util.concurrent.atomic.AtomicLong.weakCompareAndSet​(long, long)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicLong.compareAndExchange(long, long) and AtomicLong.compareAndSet(long, long)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicLong.weakCompareAndSetPlain(long, long) be used instead.
    java.util.concurrent.atomic.AtomicLongArray.weakCompareAndSet​(int, long, long)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicLongArray.compareAndExchange(int, long, long) and AtomicLongArray.compareAndSet(int, long, long)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicLongArray.weakCompareAndSetPlain(int, long, long) be used instead.
    java.util.concurrent.atomic.AtomicReference.weakCompareAndSet​(V, V)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicReference.compareAndExchange(V, V) and AtomicReference.compareAndSet(V, V)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicReference.weakCompareAndSetPlain(V, V) be used instead.
    java.util.concurrent.atomic.AtomicReferenceArray.weakCompareAndSet​(int, E, E)
    This method has plain memory effects but the method name implies volatile memory effects (see methods such as AtomicReferenceArray.compareAndExchange(int, E, E) and AtomicReferenceArray.compareAndSet(int, E, E)). To avoid confusion over plain or volatile memory effects it is recommended that the method AtomicReferenceArray.weakCompareAndSetPlain(int, E, E) be used instead.
    java.util.concurrent.ThreadPoolExecutor.finalize()
    java.util.Date.getDate()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.DAY_OF_MONTH).
    java.util.Date.getDay()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.DAY_OF_WEEK).
    java.util.Date.getHours()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.HOUR_OF_DAY).
    java.util.Date.getMinutes()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.MINUTE).
    java.util.Date.getMonth()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.MONTH).
    java.util.Date.getSeconds()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.SECOND).
    java.util.Date.getTimezoneOffset()
    As of JDK version 1.1, replaced by -(Calendar.get(Calendar.ZONE_OFFSET) + Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000).
    java.util.Date.getYear()
    As of JDK version 1.1, replaced by Calendar.get(Calendar.YEAR) - 1900.
    java.util.Date.parse​(String)
    As of JDK version 1.1, replaced by DateFormat.parse(String s).
    java.util.Date.setDate​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.DAY_OF_MONTH, int date).
    java.util.Date.setHours​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.HOUR_OF_DAY, int hours).
    java.util.Date.setMinutes​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.MINUTE, int minutes).
    java.util.Date.setMonth​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.MONTH, int month).
    java.util.Date.setSeconds​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.SECOND, int seconds).
    java.util.Date.setYear​(int)
    As of JDK version 1.1, replaced by Calendar.set(Calendar.YEAR, year + 1900).
    java.util.Date.toGMTString()
    As of JDK version 1.1, replaced by DateFormat.format(Date date), using a GMT TimeZone.
    java.util.Date.toLocaleString()
    As of JDK version 1.1, replaced by DateFormat.format(Date date).
    java.util.Date.UTC​(int, int, int, int, int, int)
    As of JDK version 1.1, replaced by Calendar.set(year + 1900, month, date, hrs, min, sec) or GregorianCalendar(year + 1900, month, date, hrs, min, sec), using a UTC TimeZone, followed by Calendar.getTime().getTime().
    java.util.logging.Logger.logrb​(Level, String, String, String, String)
    Use Logger.logrb(java.util.logging.Level, java.lang.String, java.lang.String, java.util.ResourceBundle, java.lang.String, java.lang.Object...) instead.
    java.util.logging.LogManager.getLoggingMXBean()
    java.util.logging.LoggingMXBean is deprecated and replaced with java.lang.management.PlatformLoggingMXBean. Use ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class) instead.
    java.util.logging.LogRecord.setMillis​(long)
    LogRecord maintains timestamps with nanosecond resolution, using Instant values. For this reason, setInstant() should be used in preference to setMillis().
    java.util.Properties.save​(OutputStream, String)
    This method does not throw an IOException if an I/O error occurs while saving the property list. The preferred way to save a properties list is via the store(OutputStream out, String comments) method or the storeToXML(OutputStream os, String comment) method.
    javax.imageio.spi.ServiceRegistry.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.imageio.stream.FileCacheImageInputStream.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.imageio.stream.FileImageInputStream.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.imageio.stream.FileImageOutputStream.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.imageio.stream.ImageInputStreamImpl.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.imageio.stream.MemoryCacheImageInputStream.finalize()
    The finalize method has been deprecated. Subclasses that override finalize in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overriding finalize method. When overriding the finalize method, its implementation must explicitly ensure that super.finalize() is invoked as described in Object.finalize(). See the specification for Object.finalize() for further information about migration options.
    javax.management.AttributeValueExp.setMBeanServer​(MBeanServer)
    This method has no effect. The MBean Server used to obtain an attribute value is QueryEval.getMBeanServer().
    javax.management.MBeanServer.deserialize​(ObjectName, byte[])
    Use getClassLoaderFor to obtain the appropriate class loader for deserialization.
    javax.management.monitor.CounterMonitor.getDerivedGauge()
    As of JMX 1.2, replaced by CounterMonitor.getDerivedGauge(ObjectName)
    javax.management.monitor.CounterMonitor.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by CounterMonitor.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.monitor.CounterMonitor.getThreshold()
    As of JMX 1.2, replaced by CounterMonitor.getThreshold(ObjectName)
    javax.management.monitor.CounterMonitor.setThreshold​(Number)
    As of JMX 1.2, replaced by CounterMonitor.setInitThreshold(java.lang.Number)
    javax.management.monitor.CounterMonitorMBean.getDerivedGauge()
    As of JMX 1.2, replaced by CounterMonitorMBean.getDerivedGauge(ObjectName)
    javax.management.monitor.CounterMonitorMBean.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by CounterMonitorMBean.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.monitor.CounterMonitorMBean.getThreshold()
    As of JMX 1.2, replaced by CounterMonitorMBean.getThreshold(ObjectName)
    javax.management.monitor.CounterMonitorMBean.setThreshold​(Number)
    As of JMX 1.2, replaced by CounterMonitorMBean.setInitThreshold(java.lang.Number)
    javax.management.monitor.GaugeMonitor.getDerivedGauge()
    As of JMX 1.2, replaced by GaugeMonitor.getDerivedGauge(ObjectName)
    javax.management.monitor.GaugeMonitor.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by GaugeMonitor.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.monitor.GaugeMonitorMBean.getDerivedGauge()
    As of JMX 1.2, replaced by GaugeMonitorMBean.getDerivedGauge(ObjectName)
    javax.management.monitor.GaugeMonitorMBean.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by GaugeMonitorMBean.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.monitor.Monitor.getObservedObject()
    As of JMX 1.2, replaced by Monitor.getObservedObjects()
    javax.management.monitor.Monitor.setObservedObject​(ObjectName)
    As of JMX 1.2, replaced by Monitor.addObservedObject(javax.management.ObjectName)
    javax.management.monitor.MonitorMBean.getObservedObject()
    As of JMX 1.2, replaced by MonitorMBean.getObservedObjects()
    javax.management.monitor.MonitorMBean.setObservedObject​(ObjectName)
    As of JMX 1.2, replaced by MonitorMBean.addObservedObject(javax.management.ObjectName)
    javax.management.monitor.StringMonitor.getDerivedGauge()
    As of JMX 1.2, replaced by StringMonitor.getDerivedGauge(ObjectName)
    javax.management.monitor.StringMonitor.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by StringMonitor.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.monitor.StringMonitorMBean.getDerivedGauge()
    As of JMX 1.2, replaced by StringMonitorMBean.getDerivedGauge(ObjectName)
    javax.management.monitor.StringMonitorMBean.getDerivedGaugeTimeStamp()
    As of JMX 1.2, replaced by StringMonitorMBean.getDerivedGaugeTimeStamp(ObjectName)
    javax.management.StringValueExp.setMBeanServer​(MBeanServer)
    javax.management.ValueExp.setMBeanServer​(MBeanServer)
    This method is not needed because a ValueExp can access the MBean server in which it is being evaluated by using QueryEval.getMBeanServer().
    javax.net.ssl.HandshakeCompletedEvent.getPeerCertificateChain()
    The HandshakeCompletedEvent.getPeerCertificates() method that returns an array of java.security.cert.Certificate should be used instead.
    javax.net.ssl.SSLSession.getPeerCertificateChain()
    The SSLSession.getPeerCertificates() method that returns an array of java.security.cert.Certificate should be used instead.
    javax.sql.rowset.BaseRowSet.setUnicodeStream​(int, InputStream, int)
    getCharacterStream should be used in its place
    javax.swing.AbstractButton.getLabel()
    - Replaced by getText
    javax.swing.AbstractButton.setLabel​(String)
    - Replaced by setText(text)
    javax.swing.FocusManager.disableSwingFocusManager()
    as of 1.4, replaced by KeyboardFocusManager.setDefaultFocusTraversalPolicy(FocusTraversalPolicy)
    javax.swing.FocusManager.isFocusManagerEnabled()
    As of 1.4, replaced by KeyboardFocusManager.getDefaultFocusTraversalPolicy()
    javax.swing.InputVerifier.shouldYieldFocus​(JComponent)
    use InputVerifier.shouldYieldFocus(JComponent, JComponent) instead.
    javax.swing.JComponent.disable()
    As of JDK version 1.1, replaced by java.awt.Component.setEnabled(boolean).
    javax.swing.JComponent.enable()
    As of JDK version 1.1, replaced by java.awt.Component.setEnabled(boolean).
    javax.swing.JComponent.getNextFocusableComponent()
    As of 1.4, replaced by FocusTraversalPolicy.
    javax.swing.JComponent.hide()
    javax.swing.JComponent.isManagingFocus()
    As of 1.4, replaced by Component.setFocusTraversalKeys(int, Set) and Container.setFocusCycleRoot(boolean).
    javax.swing.JComponent.requestDefaultFocus()
    As of 1.4, replaced by FocusTraversalPolicy.getDefaultComponent(Container).requestFocus()
    javax.swing.JComponent.reshape​(int, int, int, int)
    As of JDK 5, replaced by Component.setBounds(int, int, int, int).

    Moves and resizes this component.

    javax.swing.JComponent.setNextFocusableComponent​(Component)
    As of 1.4, replaced by FocusTraversalPolicy
    javax.swing.JInternalFrame.getMenuBar()
    As of Swing version 1.0.3, replaced by getJMenuBar().
    javax.swing.JInternalFrame.setMenuBar​(JMenuBar)
    As of Swing version 1.0.3 replaced by setJMenuBar(JMenuBar m).
    javax.swing.JList.getSelectedValues()
    As of JDK 1.7, replaced by JList.getSelectedValuesList()
    javax.swing.JMenuBar.getComponentAtIndex​(int)
    replaced by getComponent(int i)
    javax.swing.JPasswordField.getText()
    As of Java 2 platform v1.2, replaced by getPassword.
    javax.swing.JPopupMenu.getComponentAtIndex​(int)
    replaced by Container.getComponent(int)
    javax.swing.JRootPane.getMenuBar()
    As of Swing version 1.0.3 replaced by getJMenuBar().
    javax.swing.JRootPane.setMenuBar​(JMenuBar)
    As of Swing version 1.0.3 replaced by setJMenuBar(JMenuBar menu).
    javax.swing.JTable.createScrollPaneForTable​(JTable)
    As of Swing version 1.0.2, replaced by new JScrollPane(aTable).
    javax.swing.JTable.sizeColumnsToFit​(boolean)
    As of Swing version 1.0.3, replaced by doLayout().
    javax.swing.JViewport.isBackingStoreEnabled()
    As of Java 2 platform v1.3, replaced by getScrollMode().
    javax.swing.JViewport.setBackingStoreEnabled​(boolean)
    As of Java 2 platform v1.3, replaced by setScrollMode().
    javax.swing.KeyStroke.getKeyStroke​(char, boolean)
    use getKeyStroke(char)
    javax.swing.plaf.basic.BasicSplitPaneUI.createKeyboardDownRightListener()
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.createKeyboardEndListener()
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.createKeyboardHomeListener()
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.createKeyboardResizeToggleListener()
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.createKeyboardUpLeftListener()
    As of Java 2 platform v1.3.
    javax.swing.plaf.basic.BasicSplitPaneUI.getDividerBorderSize()
    As of Java 2 platform v1.3, instead set the border on the divider.
    javax.swing.plaf.basic.BasicTextUI.modelToView​(JTextComponent, int)
    replaced by TextUI.modelToView2D(JTextComponent, int, Position.Bias)
    javax.swing.plaf.basic.BasicTextUI.viewToModel​(JTextComponent, Point)
    replaced by TextUI.viewToModel2D(JTextComponent, Point2D, Position.Bias[])
    javax.swing.plaf.metal.MetalComboBoxUI.editablePropertyChanged​(PropertyChangeEvent)
    As of Java 2 platform v1.4.
    javax.swing.plaf.metal.MetalComboBoxUI.removeListeners()
    As of Java 2 platform v1.4.
    javax.swing.plaf.metal.MetalScrollPaneUI.uninstallListeners​(JScrollPane)
    - Replaced by BasicScrollPaneUI.uninstallListeners(JComponent)
    javax.swing.plaf.multi.MultiTextUI.modelToView​(JTextComponent, int)
    replaced by TextUI.modelToView2D(JTextComponent, int, Position.Bias)
    javax.swing.plaf.multi.MultiTextUI.viewToModel​(JTextComponent, Point)
    javax.swing.plaf.TextUI.getToolTipText​(JTextComponent, Point)
    replaced by TextUI.getToolTipText2D(JTextComponent, Point2D)
    javax.swing.plaf.TextUI.modelToView​(JTextComponent, int)
    replaced by TextUI.modelToView2D(JTextComponent, int, Position.Bias)
    javax.swing.plaf.TextUI.viewToModel​(JTextComponent, Point)
    replaced by TextUI.viewToModel2D(JTextComponent, Point2D, Position.Bias[])
    javax.swing.RepaintManager.addDirtyRegion​(Applet, int, int, int, int)
    The Applet API is deprecated. See the java.applet package documentation for further information.
    javax.swing.ScrollPaneLayout.getViewportBorderBounds​(JScrollPane)
    As of JDK version Swing1.1 replaced by JScrollPane.getViewportBorderBounds().
    javax.swing.SwingUtilities.findFocusOwner​(Component)
    As of 1.4, replaced by KeyboardFocusManager.getFocusOwner().
    javax.swing.table.TableColumn.disableResizedPosting()
    as of Java 2 platform v1.3
    javax.swing.table.TableColumn.enableResizedPosting()
    as of Java 2 platform v1.3
    javax.swing.text.html.HTMLEditorKit.InsertHTMLTextAction.insertAtBoundry​(JEditorPane, HTMLDocument, int, Element, String, HTML.Tag, HTML.Tag)
    As of Java 2 platform v1.3, use insertAtBoundary
    javax.swing.text.JTextComponent.modelToView​(int)
    replaced by JTextComponent.modelToView2D(int)
    javax.swing.text.JTextComponent.viewToModel​(Point)
    replaced by JTextComponent.viewToModel2D(Point2D)
    javax.swing.text.LabelView.getFontMetrics()
    FontMetrics are not used for glyph rendering when running in the JDK.
    javax.swing.text.PasswordView.drawEchoCharacter​(Graphics, int, int, char)
    replaced by PasswordView.drawEchoCharacter(Graphics2D, float, float, char)
    javax.swing.text.PasswordView.drawSelectedText​(Graphics, int, int, int, int)
    replaced by PlainView.drawSelectedText(Graphics2D, float, float, int, int)
    javax.swing.text.PasswordView.drawUnselectedText​(Graphics, int, int, int, int)
    replaced by PlainView.drawUnselectedText(Graphics2D, float, float, int, int)
    javax.swing.text.PlainView.drawLine​(int, Graphics, int, int)
    replaced by PlainView.drawLine(int, Graphics2D, float, float)
    javax.swing.text.PlainView.drawSelectedText​(Graphics, int, int, int, int)
    replaced by PlainView.drawSelectedText(Graphics2D, float, float, int, int)
    javax.swing.text.PlainView.drawUnselectedText​(Graphics, int, int, int, int)
    replaced by PlainView.drawUnselectedText(Graphics2D, float, float, int, int)
    javax.swing.text.TableView.createTableCell​(Element)
    Table cells can now be any arbitrary View implementation and should be produced by the ViewFactory rather than the table.
    javax.swing.text.Utilities.drawTabbedText​(Segment, int, int, Graphics, TabExpander, int)
    replaced by Utilities.drawTabbedText(Segment, float, float, Graphics2D, TabExpander, int)
    javax.swing.text.Utilities.getBreakLocation​(Segment, FontMetrics, int, int, TabExpander, int)
    replaced by Utilities.getBreakLocation(Segment, FontMetrics, float, float, TabExpander, int)
    javax.swing.text.Utilities.getPositionAbove​(JTextComponent, int, int)
    replaced by Utilities.getPositionAbove(JTextComponent, int, float)
    javax.swing.text.Utilities.getPositionBelow​(JTextComponent, int, int)
    replaced by Utilities.getPositionBelow(JTextComponent, int, float)
    javax.swing.text.Utilities.getTabbedTextOffset​(Segment, FontMetrics, int, int, TabExpander, int)
    replaced by Utilities.getTabbedTextOffset(Segment, FontMetrics, float, float, TabExpander, int, boolean)
    javax.swing.text.Utilities.getTabbedTextWidth​(Segment, FontMetrics, int, TabExpander, int)
    replaced by Utilities.getTabbedTextWidth(Segment, FontMetrics, float, TabExpander, int)
    javax.swing.text.View.modelToView​(int, Shape)  
    javax.swing.text.View.viewToModel​(float, float, Shape)  
    javax.swing.text.WrappedPlainView.drawLine​(int, int, Graphics, int, int)
    replaced by WrappedPlainView.drawLine(int, int, Graphics2D, float, float)
    javax.swing.text.WrappedPlainView.drawSelectedText​(Graphics, int, int, int, int)
    replaced by WrappedPlainView.drawSelectedText(Graphics2D, float, float, int, int)
    javax.swing.text.WrappedPlainView.drawUnselectedText​(Graphics, int, int, int, int)
    replaced by WrappedPlainView.drawUnselectedText(Graphics2D, float, float, int, int)
    javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange​(Vector<?>, TreePath)
    As of JDK version 1.7
    javax.tools.StandardJavaFileManager.getJavaFileObjectsFromPaths​(Iterable<? extends Path>)
    use StandardJavaFileManager.getJavaFileObjectsFromPaths(Collection) instead, to prevent the possibility of accidentally calling the method with a single Path as such an argument. Although Path implements Iterable<Path>, it would almost never be correct to pass a single Path and have it be treated as an Iterable of its components.
    javax.tools.ToolProvider.getSystemToolClassLoader()
    This method is subject to removal in a future version of Java SE. Use the system tool provider or service loader mechanisms to locate system tools as well as user-installed tools.
    javax.xml.stream.XMLEventFactory.newInstance​(String, ClassLoader)
    This method has been deprecated to maintain API consistency. All newInstance methods have been replaced with corresponding newFactory methods. The replacement XMLEventFactory.newFactory(java.lang.String, java.lang.ClassLoader) method defines no changes in behavior.
    javax.xml.stream.XMLInputFactory.newInstance​(String, ClassLoader)
    This method has been deprecated to maintain API consistency. All newInstance methods have been replaced with corresponding newFactory methods. The replacement XMLInputFactory.newFactory(java.lang.String, java.lang.ClassLoader) method defines no changes in behavior.
    javax.xml.stream.XMLOutputFactory.newInstance​(String, ClassLoader)
    This method has been deprecated because it returns an instance of XMLInputFactory, which is of the wrong class. Use the new method XMLOutputFactory.newFactory(java.lang.String, java.lang.ClassLoader) instead.
    org.ietf.jgss.GSSContext.acceptSecContext​(InputStream, OutputStream)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.acceptSecContext(byte[], int, int) instead.
    org.ietf.jgss.GSSContext.getMIC​(InputStream, OutputStream, MessageProp)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.getMIC(byte[], int, int, MessageProp) instead.
    org.ietf.jgss.GSSContext.initSecContext​(InputStream, OutputStream)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.initSecContext(byte[], int, int) instead.
    org.ietf.jgss.GSSContext.unwrap​(InputStream, OutputStream, MessageProp)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.unwrap(byte[], int, int, MessageProp) instead.
    org.ietf.jgss.GSSContext.verifyMIC​(InputStream, InputStream, MessageProp)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.verifyMIC(byte[], int, int, byte[], int, int, MessageProp) instead.
    org.ietf.jgss.GSSContext.wrap​(InputStream, OutputStream, MessageProp)
    The stream-based methods have been removed from RFC 8353. Use GSSContext.wrap(byte[], int, int, MessageProp) instead.
  • Constructors 
    Constructor Description
    java.awt.AWTEvent​(Event)
    It is recommended that AWTEvent(Object, int) be used instead
    java.awt.event.KeyEvent​(Component, int, long, int, int)
    as of JDK1.1; use KeyEvent(Component, int, long, int, int, char) instead
    java.io.StreamTokenizer​(InputStream)
    As of JDK version 1.1, the preferred way to tokenize an input stream is to convert it into a character stream, for example:
       Reader r = new BufferedReader(new InputStreamReader(is));
       StreamTokenizer st = new StreamTokenizer(r);
     
    java.lang.Boolean​(boolean)
    It is rarely appropriate to use this constructor. The static factory Boolean.valueOf(boolean) is generally a better choice, as it is likely to yield significantly better space and time performance. Also consider using the final fields Boolean.TRUE and Boolean.FALSE if possible.
    java.lang.Byte​(byte)
    It is rarely appropriate to use this constructor. The static factory Byte.valueOf(byte) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.Character​(char)
    It is rarely appropriate to use this constructor. The static factory Character.valueOf(char) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.Double​(double)
    It is rarely appropriate to use this constructor. The static factory Double.valueOf(double) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.Float​(float)
    It is rarely appropriate to use this constructor. The static factory Float.valueOf(float) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.Integer​(int)
    It is rarely appropriate to use this constructor. The static factory Integer.valueOf(int) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.invoke.ConstantBootstraps()
    java.lang.Long​(long)
    It is rarely appropriate to use this constructor. The static factory Long.valueOf(long) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.reflect.Modifier()
    java.lang.Short​(short)
    It is rarely appropriate to use this constructor. The static factory Short.valueOf(short) is generally a better choice, as it is likely to yield significantly better space and time performance.
    java.lang.String​(byte[], int, int, int)
    This method does not properly convert bytes into characters. As of JDK 1.1, the preferred way to do this is via the String constructors that take a Charset, charset name, or that use the platform's default charset.
    java.net.Socket​(String, int, boolean)
    Use DatagramSocket instead for UDP transport.
    java.rmi.RMISecurityException​(String)
    no replacement
    java.rmi.server.Operation​(String)
    no replacement
    java.rmi.server.SkeletonMismatchException​(String)
    no replacement
    java.rmi.ServerRuntimeException​(String, Exception)
    no replacement
    java.security.AuthProvider​(String, double, String)
    use AuthProvider(String, String, String) instead.
    java.security.Provider​(String, double, String)
    use Provider(String, String, String) instead.
    java.sql.Date​(int, int, int)
    instead use the constructor Date(long date)
    java.sql.Time​(int, int, int)
    Use the constructor that takes a milliseconds value in place of this constructor
    java.sql.Timestamp​(int, int, int, int, int, int, int)
    instead use the constructor Timestamp(long millis)
    java.util.Date​(int, int, int)
    As of JDK version 1.1, replaced by Calendar.set(year + 1900, month, date) or GregorianCalendar(year + 1900, month, date).
    javax.lang.model.util.AbstractAnnotationValueVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.AbstractAnnotationValueVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.AbstractElementVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.AbstractElementVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.AbstractTypeVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.AbstractTypeVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.ElementKindVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.ElementKindVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.ElementScanner6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.ElementScanner7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleAnnotationValueVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleAnnotationValueVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleElementVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleElementVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleTypeVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.SimpleTypeVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.TypeKindVisitor6()
    Release 6 is obsolete; update to a visitor for a newer release level.
    javax.lang.model.util.TypeKindVisitor7()
    Release 7 is obsolete; update to a visitor for a newer release level.
    javax.management.AttributeValueExp()
    An instance created with this constructor cannot be used in a query.
    javax.tools.ToolProvider()
Skip navigation links
  • Overview
  • Module
  • Package
  • Class
  • Use
  • Tree
  • Deprecated
  • Index
  • Help
Java SE 14
DRAFT 14-ea+31

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2020, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.
DRAFT 14-ea+31