| Interface and Description | 
|---|
| org.xml.sax.AttributeList
 This interface has been replaced by the SAX2
              
Attributes
             interface, which includes Namespace support. | 
| java.security.Certificate
 A new certificate handling package is created in the Java platform.
             This Certificate interface is entirely deprecated and
             is here to allow for a smooth transition to the new
             package. 
 | 
| org.xml.sax.DocumentHandler
 This interface has been replaced by the SAX2
              
ContentHandler
             interface, which includes Namespace support. | 
| org.omg.CORBA.DynAny
 Use the new DynAny instead 
 | 
| org.omg.CORBA.DynArray
 Use the new DynArray instead 
 | 
| org.omg.CORBA.DynEnum
 Use the new DynEnum instead 
 | 
| org.omg.CORBA.DynFixed
 Use the new DynFixed instead 
 | 
| org.omg.CORBA.DynSequence
 Use the new DynSequence instead 
 | 
| org.omg.CORBA.DynStruct
 Use the new DynStruct instead 
 | 
| org.omg.CORBA.DynUnion
 Use the new DynUnion instead 
 | 
| org.omg.CORBA.DynValue
 Use the new DynValue instead 
 | 
| java.rmi.server.LoaderHandler
 no replacement 
 | 
| org.xml.sax.Parser
 This interface has been replaced by the SAX2
              
XMLReader
             interface, which includes Namespace support. | 
| java.rmi.registry.RegistryHandler
 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. 
 | 
| javax.xml.bind.Validator
 since JAXB 2.0 
 | 
| Class and Description | 
|---|
| javax.accessibility.AccessibleResourceBundle
 This class is deprecated as of version 1.3 of the
             Java Platform. 
 | 
| 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. | 
| javax.management.DefaultLoaderRepository
 Use
  
MBeanServer.getClassLoaderRepository()
 instead. | 
| javax.management.loading.DefaultLoaderRepository
 Use
  
MBeanServer.getClassLoaderRepository()}
 instead. | 
| javax.swing.text.DefaultTextUI | 
| org.omg.CORBA.DynamicImplementation
 org.omg.CORBA.DynamicImplementation 
 | 
| org.xml.sax.HandlerBase
 This class works with the deprecated
              
DocumentHandler
             interface.  It has been replaced by the SAX2
             DefaultHandler
             class. | 
| java.security.Identity
 This class is no longer used. Its functionality has been
 replaced by  
java.security.KeyStore, the
 java.security.cert package, and
 java.security.Principal. | 
| java.security.IdentityScope
 This class is no longer used. Its functionality has been
 replaced by  
java.security.KeyStore, the
 java.security.cert package, and
 java.security.Principal. | 
| 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.rmi.server.LogStream
 no replacement 
 | 
| javax.swing.plaf.metal.MetalComboBoxUI.MetalComboPopup
 As of Java 2 platform v1.4. 
 | 
| java.rmi.server.Operation
 no replacement 
 | 
| org.xml.sax.helpers.ParserFactory
 This class works with the deprecated
              
Parser
             interface. | 
| javax.security.auth.Policy
 as of JDK version 1.4 -- Replaced by java.security.Policy.
              java.security.Policy has a method:
  
      public PermissionCollection getPermissions
          (java.security.ProtectionDomain pd)
 
 and ProtectionDomain has a constructor:
 
      public ProtectionDomain
          (CodeSource cs,
           PermissionCollection permissions,
           ClassLoader loader,
           Principal[] principals)
 
 These two APIs provide callers the means to query the
 Policy for Principal-based Permission entries. | 
| org.omg.CORBA.Principal
 Deprecated by CORBA 2.2. 
 | 
| org.omg.CORBA.PrincipalHolder
 Deprecated by CORBA 2.2. 
 | 
| java.rmi.server.RemoteStub
 Statically generated stubs are deprecated, since
 stubs are generated dynamically. See  
UnicastRemoteObject
 for information about dynamic stub generation. | 
| java.rmi.RMISecurityManager
 Use  
SecurityManager instead. | 
| java.security.Signer
 This class is no longer used. Its functionality has been
 replaced by  
java.security.KeyStore, the
 java.security.cert package, and
 java.security.Principal. | 
| javax.xml.soap.SOAPElementFactory
 - Use  
javax.xml.soap.SOAPFactory for creating SOAPElements. | 
| 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. | 
| javax.swing.text.TableView.TableCell
 A table cell can now be any View implementation. 
 | 
| Exceptions and 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.ServerRuntimeException
 no replacement 
 | 
| 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. | 
| Annotation Type and Description | 
|---|
| javax.jws.soap.InitParam | 
| javax.jws.soap.SOAPMessageHandler | 
| javax.jws.soap.SOAPMessageHandlers | 
| Field and Description | 
|---|
| javax.swing.JComponent.AccessibleJComponent.accessibleFocusHandler | 
| javax.management.openmbean.OpenType.ALLOWED_CLASSNAMES
 Use  
ALLOWED_CLASSNAMES_LIST instead. | 
| javax.management.monitor.Monitor.alreadyNotified
 equivalent to  
Monitor.alreadyNotifieds[0]. | 
| javax.swing.JViewport.backingStore
 As of Java 2 platform v1.3 
 | 
| javax.swing.plaf.basic.BasicDesktopPaneUI.closeKey
 As of 1.3. 
 | 
| 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 
 | 
| java.awt.Frame.CROSSHAIR_CURSOR
 replaced by  
Cursor.CROSSHAIR_CURSOR. | 
| javax.management.monitor.Monitor.dbgTag
 No replacement. 
 | 
| java.awt.Frame.DEFAULT_CURSOR
 replaced by  
Cursor.DEFAULT_CURSOR. | 
| javax.swing.JRootPane.defaultPressAction
 As of Java 2 platform v1.3. 
 | 
| javax.swing.JRootPane.defaultReleaseAction
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicSplitPaneUI.dividerResizeToggleKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicToolBarUI.downKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicTabbedPaneUI.downKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicSplitPaneUI.downKey
 As of Java 2 platform v1.3. 
 | 
| java.awt.Frame.E_RESIZE_CURSOR
 replaced by  
Cursor.E_RESIZE_CURSOR. | 
| javax.swing.plaf.basic.BasicSplitPaneUI.endKey
 As of Java 2 platform v1.3. 
 | 
| java.util.jar.Attributes.Name.EXTENSION_INSTALLATION
 Extension mechanism will be removed in a future release.
             Use class path instead. 
 | 
| 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"). | 
| java.awt.Frame.HAND_CURSOR
 replaced by  
Cursor.HAND_CURSOR. | 
| javax.swing.plaf.basic.BasicSplitPaneUI.homeKey
 As of Java 2 platform v1.3. 
 | 
| java.net.HttpURLConnection.HTTP_SERVER_ERROR
 it is misplaced and shouldn't have existed. 
 | 
| java.util.jar.Attributes.Name.IMPLEMENTATION_URL
 Extension mechanism will be removed in a future release.
             Use class path instead. 
 | 
| java.util.jar.Attributes.Name.IMPLEMENTATION_VENDOR_ID
 Extension mechanism will be removed in a future release.
             Use class path instead. 
 | 
| java.lang.SecurityManager.inCheck
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| 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.BasicToolBarUI.leftKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicTabbedPaneUI.leftKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicSplitPaneUI.leftKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicDesktopPaneUI.maximizeKey
 As of 1.3. 
 | 
| javax.swing.plaf.basic.BasicDesktopPaneUI.minimizeKey
 As of 1.3. 
 | 
| java.awt.Frame.MOVE_CURSOR
 replaced by  
Cursor.MOVE_CURSOR. | 
| java.awt.Frame.N_RESIZE_CURSOR
 replaced by  
Cursor.N_RESIZE_CURSOR. | 
| javax.swing.plaf.basic.BasicDesktopPaneUI.navigateKey
 As of 1.3. 
 | 
| javax.swing.plaf.basic.BasicDesktopPaneUI.navigateKey2
 As of 1.3. 
 | 
| java.awt.Frame.NE_RESIZE_CURSOR
 replaced by  
Cursor.NE_RESIZE_CURSOR. | 
| java.awt.Frame.NW_RESIZE_CURSOR
 replaced by  
Cursor.NW_RESIZE_CURSOR. | 
| javax.swing.plaf.basic.BasicInternalFrameUI.openMenuKey
 As of Java 2 platform v1.3. 
 | 
| java.awt.datatransfer.DataFlavor.plainTextFlavor
 as of 1.3. Use  
DataFlavor.getReaderForText(Transferable)
             instead of Transferable.getTransferData(DataFlavor.plainTextFlavor). | 
| java.awt.Cursor.predefined
 As of JDK version 1.7, the  
Cursor.getPredefinedCursor(int)
 method should be used instead. | 
| javax.swing.text.html.FormView.RESET
 As of 1.3, value comes from UIManager UIManager property
             FormView.resetButtonText 
 | 
| javax.swing.table.TableColumn.resizedPostingDisableCount
 as of Java 2 platform v1.3 
 | 
| javax.swing.plaf.basic.BasicToolBarUI.rightKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicTabbedPaneUI.rightKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicSplitPaneUI.rightKey
 As of Java 2 platform v1.3. 
 | 
| java.awt.Frame.S_RESIZE_CURSOR
 replaced by  
Cursor.S_RESIZE_CURSOR. | 
| java.awt.Frame.SE_RESIZE_CURSOR
 replaced by  
Cursor.SE_RESIZE_CURSOR. | 
| 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.swing.text.html.FormView.SUBMIT
 As of 1.3, value now comes from UIManager property
             FormView.submitButtonText 
 | 
| java.lang.Character.UnicodeBlock.SURROGATES_AREA
 As of J2SE 5, use  
Character.UnicodeBlock.HIGH_SURROGATES,
             Character.UnicodeBlock.HIGH_PRIVATE_USE_SURROGATES, and
             Character.UnicodeBlock.LOW_SURROGATES. These new constants match
             the block definitions of the Unicode Standard.
             The Character.UnicodeBlock.of(char) and Character.UnicodeBlock.of(int) methods
             return the new constants, not SURROGATES_AREA. | 
| java.awt.Frame.SW_RESIZE_CURSOR
 replaced by  
Cursor.SW_RESIZE_CURSOR. | 
| java.awt.Frame.TEXT_CURSOR
 replaced by  
Cursor.TEXT_CURSOR. | 
| javax.swing.ImageIcon.tracker
 since 1.8 
 | 
| javax.swing.plaf.basic.BasicToolBarUI.upKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicTabbedPaneUI.upKey
 As of Java 2 platform v1.3. 
 | 
| javax.swing.plaf.basic.BasicSplitPaneUI.upKey
 As of Java 2 platform v1.3. 
 | 
| java.awt.Frame.W_RESIZE_CURSOR
 replaced by  
Cursor.W_RESIZE_CURSOR. | 
| java.awt.Frame.WAIT_CURSOR
 replaced by  
Cursor.WAIT_CURSOR. | 
| Method and Description | 
|---|
| 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.List.addItem(String)
 replaced by  
add(String). | 
| java.awt.List.addItem(String, int)
 replaced by  
add(String, int). | 
| java.awt.CardLayout.addLayoutComponent(String, Component)
 replaced by
       
addLayoutComponent(Component, Object). | 
| java.awt.BorderLayout.addLayoutComponent(String, Component)
 replaced by  
addLayoutComponent(Component, Object). | 
| java.util.jar.Pack200.Packer.addPropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates
             a significant impediment to future modularization of the
             Java platform. This method will be removed in a future
             release.
             Applications that need to monitor progress of the packer
             can poll the value of the PROGRESS
             property instead. | 
| java.util.jar.Pack200.Unpacker.addPropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates
             a significant impediment to future modularization of the
             Java platform. This method will be removed in a future
             release.
             Applications that need to monitor progress of the
             unpacker can poll the value of the PROGRESS property instead. | 
| java.util.logging.LogManager.addPropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates a
             significant impediment to future modularization of the Java
             platform. This method will be removed in a future release.
             The global LogManager can detect changes to the
             logging configuration by overridding the readConfiguration method. | 
| java.awt.List.allowsMultipleSelections()
 As of JDK version 1.1,
 replaced by  
isMultipleMode(). | 
| 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.awt.TextArea.appendText(String)
 As of JDK version 1.1,
 replaced by  
append(String). | 
| java.awt.Window.applyResourceBundle(ResourceBundle)
 As of J2SE 1.4, replaced by
  
Component.applyComponentOrientation. | 
| java.awt.Window.applyResourceBundle(String)
 As of J2SE 1.4, replaced by
  
Component.applyComponentOrientation. | 
| java.awt.Component.bounds()
 As of JDK version 1.1,
 replaced by  
getBounds(). | 
| java.lang.SecurityManager.checkAwtEventQueueAccess()
 The dependency on  
AWTPermission creates an
             impediment to future modularization of the Java platform.
             Users of this method should instead invoke
             SecurityManager.checkPermission(java.security.Permission) directly.
             This method will be changed in a future release to check
             the permission java.security.AllPermission. | 
| java.lang.SecurityManager.checkMemberAccess(Class<?>, int)
 This method relies on the caller being at a stack depth
             of 4 which is error-prone and cannot be enforced by the runtime.
             Users of this method should instead invoke  
SecurityManager.checkPermission(java.security.Permission)
             directly.  This method will be changed in a future release
             to check the permission java.security.AllPermission. | 
| java.lang.SecurityManager.checkMulticast(InetAddress, byte)
 Use #checkPermission(java.security.Permission) instead 
 | 
| java.lang.SecurityManager.checkSystemClipboardAccess()
 The dependency on  
AWTPermission creates an
             impediment to future modularization of the Java platform.
             Users of this method should instead invoke
             SecurityManager.checkPermission(java.security.Permission) directly.
             This method will be changed in a future release to check
             the permission java.security.AllPermission. | 
| java.lang.SecurityManager.checkTopLevelWindow(Object)
 The dependency on  
AWTPermission creates an
             impediment to future modularization of the Java platform.
             Users of this method should instead invoke
             SecurityManager.checkPermission(java.security.Permission) directly.
             This method will be changed in a future release to check
             the permission java.security.AllPermission. | 
| java.lang.SecurityManager.classDepth(String)
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| java.lang.SecurityManager.classLoaderDepth()
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| java.awt.List.clear()
 As of JDK version 1.1,
 replaced by  
removeAll(). | 
| java.awt.image.renderable.RenderContext.concetenateTransform(AffineTransform)
 replaced by
                  
concatenateTransform(AffineTransform). | 
| java.awt.Container.countComponents()
 As of JDK version 1.1,
 replaced by getComponentCount(). 
 | 
| java.awt.Choice.countItems()
 As of JDK version 1.1,
 replaced by  
getItemCount(). | 
| java.awt.List.countItems()
 As of JDK version 1.1,
 replaced by  
getItemCount(). | 
| 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.lang.Thread.countStackFrames()
 The definition of this call depends on  
Thread.suspend(),
             which is deprecated.  Further, the results of this call
             were never well-defined. | 
| org.omg.CORBA.ORB.create_basic_dyn_any(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_any(Any)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_array(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_enum(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_sequence(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_struct(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_dyn_union(TypeCode)
 Use the new DynAnyFactory API instead 
 | 
| org.omg.CORBA.ORB.create_recursive_sequence_tc(int, int)
 Use a combination of create_recursive_tc and create_sequence_tc instead 
 | 
| javax.xml.soap.SOAPElementFactory.create(Name)
 Use
 javax.xml.soap.SOAPFactory.createElement(javax.xml.soap.Name)
 instead 
 | 
| javax.xml.soap.SOAPElementFactory.create(String)
 Use
 javax.xml.soap.SOAPFactory.createElement(String localName) instead 
 | 
| javax.xml.soap.SOAPElementFactory.create(String, String, String)
 Use
 javax.xml.soap.SOAPFactory.createElement(String localName,
                      String prefix,
                      String uri)
 instead 
 | 
| 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.JTable.createScrollPaneForTable(JTable)
 As of Swing version 1.0.2,
 replaced by  
new JScrollPane(aTable). | 
| 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.xml.bind.JAXBContext.createValidator()
 since JAXB2.0 
 | 
| java.lang.SecurityManager.currentClassLoader()
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| java.lang.SecurityManager.currentLoadedClass()
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| 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.lang.ClassLoader.defineClass(byte[], int, int)
 Replaced by  
defineClass(String, byte[], int, int) | 
| 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.Container.deliverEvent(Event)
 As of JDK version 1.1,
 replaced by  
dispatchEvent(AWTEvent e) | 
| java.awt.Component.deliverEvent(Event)
 As of JDK version 1.1,
 replaced by  
dispatchEvent(AWTEvent e). | 
| javax.management.MBeanServer.deserialize(ObjectName, byte[])
 Use  
getClassLoaderFor to
 obtain the appropriate class loader for deserialization. | 
| javax.management.MBeanServer.deserialize(String, byte[])
 Use  
MBeanServer.getClassLoaderRepository() to obtain the
 class loader repository and use it to deserialize. | 
| javax.management.MBeanServer.deserialize(String, ObjectName, byte[])
 Use  
getClassLoader to obtain
 the class loader for deserialization. | 
| java.lang.Thread.destroy()
 This method was originally designed to destroy this
     thread without any cleanup. Any monitors it held would have
     remained locked. However, the method was never implemented.
     If if were to be implemented, it would be deadlock-prone in
     much the manner of  
Thread.suspend(). If the target thread held
     a lock protecting a critical system resource when it was
     destroyed, no thread could ever access this resource again.
     If another thread ever attempted to lock this resource, deadlock
     would result. Such deadlocks typically manifest themselves as
     "frozen" processes. For more information, see
     
     Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?. | 
| java.awt.MenuItem.disable()
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| java.awt.Component.disable()
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| javax.swing.JComponent.disable()
 As of JDK version 1.1,
 replaced by  
java.awt.Component.setEnabled(boolean). | 
| javax.swing.table.TableColumn.disableResizedPosting()
 as of Java 2 platform v1.3 
 | 
| javax.swing.FocusManager.disableSwingFocusManager()
 as of 1.4, replaced by
  
KeyboardFocusManager.setDefaultFocusTraversalPolicy(FocusTraversalPolicy) | 
| java.rmi.server.Skeleton.dispatch(Remote, RemoteCall, int, long)
 no replacement 
 | 
| java.rmi.server.RemoteCall.done()
 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. | 
| javax.swing.plaf.metal.MetalComboBoxUI.editablePropertyChanged(PropertyChangeEvent)
 As of Java 2 platform v1.4. 
 | 
| java.awt.MenuItem.enable()
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| java.awt.Component.enable()
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| javax.swing.JComponent.enable()
 As of JDK version 1.1,
 replaced by  
java.awt.Component.setEnabled(boolean). | 
| java.awt.MenuItem.enable(boolean)
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| java.awt.Component.enable(boolean)
 As of JDK version 1.1,
 replaced by  
setEnabled(boolean). | 
| javax.swing.table.TableColumn.enableResizedPosting()
 as of Java 2 platform v1.3 
 | 
| 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.security.SignatureSpi.engineGetParameter(String) | 
| java.security.SignatureSpi.engineSetParameter(String, Object)
 Replaced by  
engineSetParameter. | 
| java.awt.datatransfer.DataFlavor.equals(String)
 As inconsistent with  
hashCode() contract,
             use isMimeTypeEqual(String) instead. | 
| org.omg.CORBA.ServerRequest.except(Any)
 use set_exception() 
 | 
| java.rmi.server.RemoteCall.executeCall()
 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. | 
| org.omg.CORBA.Any.extract_Principal()
 Deprecated by CORBA 2.2. 
 | 
| javax.swing.SwingUtilities.findFocusOwner(Component)
 As of 1.4, replaced by
    
KeyboardFocusManager.getFocusOwner(). | 
| org.omg.CORBA.ORB.get_current()
 use  
resolve_initial_references. | 
| 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.sql.CallableStatement.getBigDecimal(int, int)
 use  
getBigDecimal(int parameterIndex)
             or getBigDecimal(String parameterName) | 
| java.sql.ResultSet.getBigDecimal(int, int)
 Use  
getBigDecimal(int columnIndex)
             or getBigDecimal(String columnLabel) | 
| java.sql.ResultSet.getBigDecimal(String, int)
 Use  
getBigDecimal(int columnIndex)
             or getBigDecimal(String columnLabel) | 
| java.awt.Polygon.getBoundingBox()
 As of JDK version 1.1,
 replaced by  
getBounds(). | 
| 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.awt.Graphics.getClipRect()
 As of JDK version 1.1,
 replaced by  
getClipBounds(). | 
| javax.swing.JMenuBar.getComponentAtIndex(int)
 replaced by  
getComponent(int i) | 
| javax.swing.JPopupMenu.getComponentAtIndex(int)
 replaced by  
Container.getComponent(int) | 
| java.awt.CheckboxGroup.getCurrent()
 As of JDK version 1.1,
 replaced by  
getSelectedCheckbox(). | 
| java.awt.Frame.getCursorType()
 As of JDK version 1.1,
 replaced by  
Component.getCursor(). | 
| java.sql.Time.getDate() | 
| java.util.Date.getDate()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.DAY_OF_MONTH). | 
| java.sql.Time.getDay() | 
| java.util.Date.getDay()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.DAY_OF_WEEK). | 
| java.net.URLConnection.getDefaultRequestProperty(String)
 The instance specific getRequestProperty method
 should be used after an appropriate instance of URLConnection
 is obtained. 
 | 
| java.rmi.server.LogStream.getDefaultStream()
 no replacement 
 | 
| javax.management.monitor.GaugeMonitor.getDerivedGauge()
 As of JMX 1.2, replaced by
  
GaugeMonitor.getDerivedGauge(ObjectName) | 
| javax.management.monitor.StringMonitorMBean.getDerivedGauge()
 As of JMX 1.2, replaced by  
StringMonitorMBean.getDerivedGauge(ObjectName) | 
| javax.management.monitor.StringMonitor.getDerivedGauge()
 As of JMX 1.2, replaced by
  
StringMonitor.getDerivedGauge(ObjectName) | 
| javax.management.monitor.CounterMonitor.getDerivedGauge()
 As of JMX 1.2, replaced by
  
CounterMonitor.getDerivedGauge(ObjectName) | 
| javax.management.monitor.GaugeMonitorMBean.getDerivedGauge()
 As of JMX 1.2, replaced by  
GaugeMonitorMBean.getDerivedGauge(ObjectName) | 
| javax.management.monitor.CounterMonitorMBean.getDerivedGauge()
 As of JMX 1.2, replaced by  
CounterMonitorMBean.getDerivedGauge(ObjectName) | 
| javax.management.monitor.GaugeMonitor.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by
  
GaugeMonitor.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.management.monitor.StringMonitorMBean.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by  
StringMonitorMBean.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.management.monitor.StringMonitor.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by
  
StringMonitor.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.management.monitor.CounterMonitor.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by
  
CounterMonitor.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.management.monitor.GaugeMonitorMBean.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by  
GaugeMonitorMBean.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.management.monitor.CounterMonitorMBean.getDerivedGaugeTimeStamp()
 As of JMX 1.2, replaced by  
CounterMonitorMBean.getDerivedGaugeTimeStamp(ObjectName) | 
| javax.swing.plaf.basic.BasicSplitPaneUI.getDividerBorderSize()
 As of Java 2 platform v1.3, instead set the border on the
 divider. 
 | 
| javax.xml.bind.Validator.getEventHandler()
 since JAXB2.0 
 | 
| java.awt.Toolkit.getFontList() | 
| javax.swing.text.LabelView.getFontMetrics()
 FontMetrics are not used for glyph rendering
  when running in the JDK. 
 | 
| java.awt.Toolkit.getFontMetrics(Font)
 As of JDK version 1.2, replaced by the  
Font
          method getLineMetrics. | 
| java.awt.Toolkit.getFontPeer(String, int)
 see java.awt.GraphicsEnvironment#getAllFonts 
 | 
| java.sql.Date.getHours() | 
| java.util.Date.getHours()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.HOUR_OF_DAY). | 
| java.lang.SecurityManager.getInCheck()
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| java.rmi.server.RemoteCall.getInputStream()
 no replacement 
 | 
| javax.swing.KeyStroke.getKeyStroke(char, boolean)
 use getKeyStroke(char) 
 | 
| javax.swing.AbstractButton.getLabel()
 - Replaced by  
getText | 
| java.awt.Scrollbar.getLineIncrement()
 As of JDK version 1.1,
 replaced by  
getUnitIncrement(). | 
| java.lang.Runtime.getLocalizedInputStream(InputStream)
 As of JDK 1.1, the preferred way to translate a byte
 stream in the local encoding into a character stream in Unicode is via
 the  
InputStreamReader and BufferedReader
 classes. | 
| java.lang.Runtime.getLocalizedOutputStream(OutputStream)
 As of JDK 1.1, the preferred way to translate a
 Unicode character stream into a byte stream in the local encoding is via
 the  
OutputStreamWriter, BufferedWriter, and
 PrintWriter classes. | 
| java.sql.DriverManager.getLogStream()
 Use  
getLogWriter | 
| java.awt.FontMetrics.getMaxDecent()
 As of JDK version 1.1.1,
 replaced by  
getMaxDescent(). | 
| javax.swing.JInternalFrame.getMenuBar()
 As of Swing version 1.0.3,
 replaced by  
getJMenuBar(). | 
| javax.swing.JRootPane.getMenuBar()
 As of Swing version 1.0.3
  replaced by  
getJMenuBar(). | 
| java.sql.Date.getMinutes() | 
| java.util.Date.getMinutes()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.MINUTE). | 
| java.sql.Time.getMonth() | 
| java.util.Date.getMonth()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.MONTH). | 
| javax.swing.JComponent.getNextFocusableComponent()
 As of 1.4, replaced by  
FocusTraversalPolicy. | 
| javax.management.monitor.Monitor.getObservedObject()
 As of JMX 1.2, replaced by  
Monitor.getObservedObjects() | 
| javax.management.monitor.MonitorMBean.getObservedObject()
 As of JMX 1.2, replaced by  
MonitorMBean.getObservedObjects() | 
| java.rmi.server.Operation.getOperation()
 no replacement 
 | 
| java.rmi.server.Skeleton.getOperations()
 no replacement 
 | 
| java.awt.ComponentOrientation.getOrientation(ResourceBundle)
 As of J2SE 1.4, use  
ComponentOrientation.getOrientation(java.util.Locale). | 
| java.rmi.server.LogStream.getOutputStream()
 no replacement 
 | 
| java.rmi.server.RemoteCall.getOutputStream()
 no replacement 
 | 
| java.awt.Scrollbar.getPageIncrement()
 As of JDK version 1.1,
 replaced by  
getBlockIncrement(). | 
| java.security.Signature.getParameter(String) | 
| java.awt.MenuComponent.getPeer()
 As of JDK version 1.1,
 programs should not directly manipulate peers. 
 | 
| java.awt.Font.getPeer()
 Font rendering is now platform independent. 
 | 
| java.awt.Component.getPeer()
 As of JDK version 1.1,
 programs should not directly manipulate peers;
 replaced by  
boolean isDisplayable(). | 
| javax.xml.bind.Validator.getProperty(String)
 since JAXB2.0 
 | 
| java.rmi.server.RemoteCall.getResultStream(boolean)
 no replacement 
 | 
| java.sql.Date.getSeconds() | 
| java.util.Date.getSeconds()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.SECOND). | 
| 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.LoaderHandler.getSecurityContext(ClassLoader)
 no replacement 
 | 
| javax.swing.JList.getSelectedValues()
 As of JDK 1.7, replaced by  
JList.getSelectedValuesList() | 
| javax.swing.JPasswordField.getText()
 As of Java 2 platform v1.2,
 replaced by  
getPassword. | 
| javax.swing.JPasswordField.getText(int, int)
 As of Java 2 platform v1.2,
 replaced by  
getPassword. | 
| javax.management.monitor.CounterMonitor.getThreshold()
 As of JMX 1.2, replaced by  
CounterMonitor.getThreshold(ObjectName) | 
| javax.management.monitor.CounterMonitorMBean.getThreshold()
 As of JMX 1.2, replaced by  
CounterMonitorMBean.getThreshold(ObjectName) | 
| 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.net.MulticastSocket.getTTL()
 use the getTimeToLive method instead, which returns
 an int instead of a byte. 
 | 
| java.net.DatagramSocketImpl.getTTL()
 use getTimeToLive instead. 
 | 
| java.sql.ResultSet.getUnicodeStream(int)
 use  
getCharacterStream in place of
              getUnicodeStream | 
| java.sql.ResultSet.getUnicodeStream(String)
 use  
getCharacterStream instead | 
| javax.swing.ScrollPaneLayout.getViewportBorderBounds(JScrollPane)
 As of JDK version Swing1.1
    replaced by  
JScrollPane.getViewportBorderBounds(). | 
| java.awt.Scrollbar.getVisible()
 As of JDK version 1.1,
 replaced by  
getVisibleAmount(). | 
| java.sql.Time.getYear() | 
| java.util.Date.getYear()
 As of JDK version 1.1,
 replaced by  
Calendar.get(Calendar.YEAR) - 1900. | 
| 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.Dialog.hide()
 As of JDK version 1.5, replaced by
  
setVisible(boolean). | 
| java.awt.Window.hide()
 As of JDK version 1.5, replaced by
  
Window.setVisible(boolean). | 
| java.awt.Component.hide()
 As of JDK version 1.1,
 replaced by  
setVisible(boolean). | 
| javax.swing.JComponent.hide() | 
| java.lang.SecurityManager.inClass(String)
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| java.lang.SecurityManager.inClassLoader()
 This type of security checking is not recommended.
  It is recommended that the  
checkPermission
  call be used instead. | 
| org.omg.CORBA.Any.insert_Principal(Principal)
 Deprecated by CORBA 2.2. 
 | 
| 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 
 | 
| java.awt.TextArea.insertText(String, int)
 As of JDK version 1.1,
 replaced by  
insert(String, int). | 
| java.awt.Container.insets()
 As of JDK version 1.1,
 replaced by  
getInsets(). | 
| java.awt.Polygon.inside(int, int)
 As of JDK version 1.1,
 replaced by  
contains(int, int). | 
| java.awt.Component.inside(int, int)
 As of JDK version 1.1,
 replaced by contains(int, int). 
 | 
| java.awt.Rectangle.inside(int, int)
 As of JDK version 1.1,
 replaced by  
contains(int, int). | 
| 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. | 
| org.omg.CORBA.DynamicImplementation.invoke(ServerRequest)
 Deprecated by Portable Object Adapter 
 | 
| javax.swing.JViewport.isBackingStoreEnabled()
 As of Java 2 platform v1.3, replaced by
              
getScrollMode(). | 
| javax.swing.FocusManager.isFocusManagerEnabled()
 As of 1.4, replaced by
    
KeyboardFocusManager.getDefaultFocusTraversalPolicy() | 
| java.awt.Component.isFocusTraversable()
 As of 1.4, replaced by  
isFocusable(). | 
| java.lang.Character.isJavaLetter(char)
 Replaced by isJavaIdentifierStart(char). 
 | 
| java.lang.Character.isJavaLetterOrDigit(char)
 Replaced by isJavaIdentifierPart(char). 
 | 
| javax.swing.JComponent.isManagingFocus()
 As of 1.4, replaced by
    
Component.setFocusTraversalKeys(int, Set) and
   Container.setFocusCycleRoot(boolean). | 
| java.awt.List.isSelected(int)
 As of JDK version 1.1,
 replaced by  
isIndexSelected(int). | 
| java.lang.Character.isSpace(char)
 Replaced by isWhitespace(char). 
 | 
| java.rmi.dgc.VMID.isUnique() | 
| javax.xml.bind.Unmarshaller.isValidating()
 since JAXB2.0, please see  
Unmarshaller.getSchema() | 
| 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.ScrollPane.layout()
 As of JDK version 1.1,
 replaced by  
doLayout(). | 
| java.awt.Container.layout()
 As of JDK version 1.1,
 replaced by  
doLayout(). | 
| java.awt.Component.layout()
 As of JDK version 1.1,
 replaced by  
doLayout(). | 
| java.rmi.server.RMIClassLoader.loadClass(String)
 replaced by  
loadClass(String,String) method | 
| java.rmi.server.LoaderHandler.loadClass(String)
 no replacement 
 | 
| java.rmi.server.LoaderHandler.loadClass(URL, String)
 no replacement 
 | 
| java.awt.Container.locate(int, int)
 As of JDK version 1.1,
 replaced by  
getComponentAt(int, int). | 
| 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.rmi.server.LogStream.log(String)
 no replacement 
 | 
| java.util.logging.Logger.logrb(Level, String, String, String, String) | 
| java.util.logging.Logger.logrb(Level, String, String, String, String, Object) | 
| java.util.logging.Logger.logrb(Level, String, String, String, String, Object[]) | 
| java.util.logging.Logger.logrb(Level, String, String, String, String, Throwable) | 
| java.awt.Component.lostFocus(Event, Object)
 As of JDK version 1.1,
 replaced by processFocusEvent(FocusEvent). 
 | 
| java.awt.TextArea.minimumSize()
 As of JDK version 1.1,
 replaced by  
getMinimumSize(). | 
| java.awt.List.minimumSize()
 As of JDK version 1.1,
 replaced by  
getMinimumSize(). | 
| java.awt.TextField.minimumSize()
 As of JDK version 1.1,
 replaced by  
getMinimumSize(). | 
| java.awt.Container.minimumSize()
 As of JDK version 1.1,
 replaced by  
getMinimumSize(). | 
| java.awt.Component.minimumSize()
 As of JDK version 1.1,
 replaced by  
getMinimumSize(). | 
| java.awt.List.minimumSize(int)
 As of JDK version 1.1,
 replaced by  
getMinimumSize(int). | 
| java.awt.TextField.minimumSize(int)
 As of JDK version 1.1,
 replaced by  
getMinimumSize(int). | 
| java.awt.TextArea.minimumSize(int, int)
 As of JDK version 1.1,
 replaced by  
getMinimumSize(int, int). | 
| javax.swing.text.View.modelToView(int, Shape) | 
| 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.Rectangle.move(int, int)
 As of JDK version 1.1,
 replaced by  
setLocation(int, int). | 
| org.omg.CORBA.Principal.name()
 Deprecated by CORBA 2.2. 
 | 
| org.omg.CORBA.Principal.name(byte[])
 Deprecated by CORBA 2.2. 
 | 
| 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. | 
| 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.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. | 
| 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. | 
| java.awt.Component.nextFocus()
 As of JDK version 1.1,
 replaced by transferFocus(). 
 | 
| java.awt.datatransfer.DataFlavor.normalizeMimeType(String) | 
| javax.activation.ActivationDataFlavor.normalizeMimeType(String) | 
| java.awt.datatransfer.DataFlavor.normalizeMimeTypeParameter(String, String) | 
| javax.activation.ActivationDataFlavor.normalizeMimeTypeParameter(String, String) | 
| javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(Vector<?>, TreePath)
 As of JDK version 1.7 
 | 
| org.omg.CORBA.ServerRequest.op_name()
 use operation() 
 | 
| org.omg.CORBA.ServerRequest.params(NVList)
 use the method  
arguments | 
| java.util.Date.parse(String)
 As of JDK version 1.1,
 replaced by  
DateFormat.parse(String s). | 
| java.rmi.server.LogStream.parseLevel(String)
 no replacement 
 | 
| java.awt.Window.postEvent(Event)
 As of JDK version 1.1
 replaced by  
dispatchEvent(AWTEvent). | 
| 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.Component.postEvent(Event)
 As of JDK version 1.1,
 replaced by dispatchEvent(AWTEvent). 
 | 
| java.awt.image.renderable.RenderContext.preConcetenateTransform(AffineTransform)
 replaced by
                  
preConcatenateTransform(AffineTransform). | 
| java.awt.TextArea.preferredSize()
 As of JDK version 1.1,
 replaced by  
getPreferredSize(). | 
| java.awt.List.preferredSize()
 As of JDK version 1.1,
 replaced by  
getPreferredSize(). | 
| java.awt.TextField.preferredSize()
 As of JDK version 1.1,
 replaced by  
getPreferredSize(). | 
| java.awt.Container.preferredSize()
 As of JDK version 1.1,
 replaced by  
getPreferredSize(). | 
| java.awt.Component.preferredSize()
 As of JDK version 1.1,
 replaced by  
getPreferredSize(). | 
| java.awt.List.preferredSize(int)
 As of JDK version 1.1,
 replaced by  
getPreferredSize(int). | 
| java.awt.TextField.preferredSize(int)
 As of JDK version 1.1,
 replaced by  
getPreferredSize(int). | 
| java.awt.TextArea.preferredSize(int, int)
 As of JDK version 1.1,
 replaced by  
getPreferredSize(int, int). | 
| org.omg.CORBA.portable.InputStream.read_Principal()
 Deprecated by CORBA 2.2. 
 | 
| 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:
 
 with:
  | 
| java.io.ObjectInputStream.readLine()
 This method does not properly convert bytes to characters.
          see DataInputStream for the details and alternatives. 
 | 
| 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.RemoteCall.releaseInputStream()
 no replacement 
 | 
| java.rmi.server.RemoteCall.releaseOutputStream()
 no replacement 
 | 
| javax.swing.plaf.metal.MetalComboBoxUI.removeListeners()
 As of Java 2 platform v1.4. 
 | 
| java.util.jar.Pack200.Packer.removePropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates
             a significant impediment to future modularization of the
             Java platform. This method will be removed in a future
             release. | 
| java.util.jar.Pack200.Unpacker.removePropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates
             a significant impediment to future modularization of the
             Java platform. This method will be removed in a future
             release. | 
| java.util.logging.LogManager.removePropertyChangeListener(PropertyChangeListener)
 The dependency on  
PropertyChangeListener creates a
             significant impediment to future modularization of the Java
             platform. This method will be removed in a future release.
             The global LogManager can detect changes to the
             logging configuration by overridding the readConfiguration method. | 
| java.awt.TextArea.replaceText(String, int, int)
 As of JDK version 1.1,
 replaced by  
replaceRange(String, int, int). | 
| javax.swing.JComponent.requestDefaultFocus()
 As of 1.4, replaced by
  
FocusTraversalPolicy.getDefaultComponent(Container).requestFocus() | 
| java.awt.Window.reshape(int, int, int, int)
 As of JDK version 1.1,
 replaced by  
setBounds(int, int, int, int). | 
| java.awt.Component.reshape(int, int, int, int)
 As of JDK version 1.1,
 replaced by  
setBounds(int, int, int, int). | 
| java.awt.Rectangle.reshape(int, int, int, int)
 As of JDK version 1.1,
 replaced by  
setBounds(int, int, int, int). | 
| 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.  | 
| java.awt.Component.resize(Dimension)
 As of JDK version 1.1,
 replaced by  
setSize(Dimension). | 
| java.awt.Component.resize(int, int)
 As of JDK version 1.1,
 replaced by  
setSize(int, int). | 
| java.awt.Rectangle.resize(int, int)
 As of JDK version 1.1,
 replaced by  
setSize(int, int). | 
| org.omg.CORBA.ServerRequest.result(Any)
 use the method  
set_result | 
| 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.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.System.runFinalizersOnExit(boolean)
 This method was originally designed to enable or disable
 running finalizers on exit. Running finalizers on exit was disabled
 by default. If enabled, then the finalizers of all objects whose
 finalizers had not yet been automatically invoked were to be run before
 the Java runtime exits. That behavior is inherently unsafe. It may
 result in finalizers being called on live objects while other threads
 are concurrently manipulating those objects, resulting in erratic
 behavior or deadlock. 
 | 
| java.lang.Runtime.runFinalizersOnExit(boolean)
 This method was originally designed to enable or disable
 running finalizers on exit. Running finalizers on exit was disabled by default.
 If enabled, then the finalizers of all objects whose finalizers had not
 yet been automatically invoked were to be run before the Java runtime exits.
 That behavior is inherently unsafe. It may result in finalizers being called
 on live objects while other threads are concurrently manipulating those objects,
 resulting in erratic behavior or deadlock. 
 | 
| 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. | 
| 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);
  ...... 
 | 
| javax.swing.JViewport.setBackingStoreEnabled(boolean)
 As of Java 2 platform v1.3, replaced by
              
setScrollMode(). | 
| java.awt.CheckboxGroup.setCurrent(Checkbox)
 As of JDK version 1.1,
 replaced by  
setSelectedCheckbox(Checkbox). | 
| java.awt.Frame.setCursor(int)
 As of JDK version 1.1,
 replaced by  
Component.setCursor(Cursor). | 
| java.sql.Time.setDate(int) | 
| java.util.Date.setDate(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.DAY_OF_MONTH, int date). | 
| 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.rmi.server.LogStream.setDefaultStream(PrintStream)
 no replacement 
 | 
| java.awt.TextField.setEchoCharacter(char)
 As of JDK version 1.1,
 replaced by  
setEchoChar(char). | 
| javax.xml.bind.Validator.setEventHandler(ValidationEventHandler)
 since JAXB2.0 
 | 
| java.sql.Date.setHours(int) | 
| java.util.Date.setHours(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.HOUR_OF_DAY, int hours). | 
| javax.swing.AbstractButton.setLabel(String)
 - Replaced by  
setText(text) | 
| java.awt.Scrollbar.setLineIncrement(int)
 As of JDK version 1.1,
 replaced by  
setUnitIncrement(int). | 
| java.sql.DriverManager.setLogStream(PrintStream)
 Use  
setLogWriter | 
| javax.management.StringValueExp.setMBeanServer(MBeanServer) | 
| javax.management.AttributeValueExp.setMBeanServer(MBeanServer)
 This method has no effect.  The MBean Server used to
 obtain an attribute value is  
QueryEval.getMBeanServer(). | 
| 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.swing.JInternalFrame.setMenuBar(JMenuBar)
 As of Swing version 1.0.3
  replaced by  
setJMenuBar(JMenuBar m). | 
| javax.swing.JRootPane.setMenuBar(JMenuBar)
 As of Swing version 1.0.3
  replaced by  
setJMenuBar(JMenuBar menu). | 
| java.sql.Date.setMinutes(int) | 
| java.util.Date.setMinutes(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.MINUTE, int minutes). | 
| java.awt.event.KeyEvent.setModifiers(int)
 as of JDK1.1.4 
 | 
| java.sql.Time.setMonth(int) | 
| java.util.Date.setMonth(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.MONTH, int month). | 
| java.awt.List.setMultipleSelections(boolean)
 As of JDK version 1.1,
 replaced by  
setMultipleMode(boolean). | 
| javax.swing.JComponent.setNextFocusableComponent(Component)
 As of 1.4, replaced by  
FocusTraversalPolicy | 
| javax.management.monitor.Monitor.setObservedObject(ObjectName)
 As of JMX 1.2, replaced by  
Monitor.addObservedObject(javax.management.ObjectName) | 
| javax.management.monitor.MonitorMBean.setObservedObject(ObjectName)
 As of JMX 1.2, replaced by  
MonitorMBean.addObservedObject(javax.management.ObjectName) | 
| java.rmi.server.LogStream.setOutputStream(OutputStream)
 no replacement 
 | 
| java.awt.Scrollbar.setPageIncrement(int)
 As of JDK version 1.1,
 replaced by  
setBlockIncrement(). | 
| java.security.Signature.setParameter(String, Object)
 Use
  
setParameter. | 
| javax.xml.bind.Validator.setProperty(String, Object)
 since JAXB2.0 
 | 
| 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.RemoteStub(RemoteRef) constructor. | 
| java.sql.Date.setSeconds(int) | 
| java.util.Date.setSeconds(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.SECOND, int seconds). | 
| javax.management.monitor.CounterMonitor.setThreshold(Number)
 As of JMX 1.2, replaced by  
CounterMonitor.setInitThreshold(java.lang.Number) | 
| javax.management.monitor.CounterMonitorMBean.setThreshold(Number)
 As of JMX 1.2, replaced by  
CounterMonitorMBean.setInitThreshold(java.lang.Number) | 
| java.net.MulticastSocket.setTTL(byte)
 use the setTimeToLive method instead, which uses
 int instead of byte as the type for ttl. 
 | 
| java.net.DatagramSocketImpl.setTTL(byte)
 use setTimeToLive instead. 
 | 
| java.sql.PreparedStatement.setUnicodeStream(int, InputStream, int)
 Use  
setCharacterStream | 
| javax.sql.rowset.BaseRowSet.setUnicodeStream(int, InputStream, int)
 getCharacterStream should be used in its place 
 | 
| java.net.URLStreamHandler.setURL(URL, String, String, int, String, String)
 Use setURL(URL, String, String, int, String, String, String,
             String); 
 | 
| javax.xml.bind.Unmarshaller.setValidating(boolean)
 since JAXB2.0, please see  
Unmarshaller.setSchema(javax.xml.validation.Schema) | 
| java.sql.Time.setYear(int) | 
| java.util.Date.setYear(int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(Calendar.YEAR, year + 1900). | 
| java.awt.Dialog.show()
 As of JDK version 1.5, replaced by
  
setVisible(boolean). | 
| java.awt.Window.show()
 As of JDK version 1.5, replaced by
  
Window.setVisible(boolean). | 
| java.awt.Component.show()
 As of JDK version 1.1,
 replaced by  
setVisible(boolean). | 
| java.awt.Component.show(boolean)
 As of JDK version 1.1,
 replaced by  
setVisible(boolean). | 
| java.awt.Component.size()
 As of JDK version 1.1,
 replaced by  
getSize(). | 
| javax.swing.JTable.sizeColumnsToFit(boolean)
 As of Swing version 1.0.3,
 replaced by  
doLayout(). | 
| java.lang.ThreadGroup.stop()
 This method is inherently unsafe.  See
      
Thread.stop() for details. | 
| 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.stop(Throwable)
 This method was originally designed to force a thread to stop
        and throw a given  
Throwable as an exception. It was
        inherently unsafe (see Thread.stop() for details), and furthermore
        could be used to generate exceptions that the target thread was
        not prepared to handle.
        For more information, see
        Why
        are Thread.stop, Thread.suspend and Thread.resume Deprecated?. | 
| java.lang.ThreadGroup.suspend()
 This method is inherently deadlock-prone.  See
      
Thread.suspend() for details. | 
| 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.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.rmi.server.LogStream.toString()
 no replacement 
 | 
| java.rmi.server.Operation.toString()
 no replacement 
 | 
| 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
  
toString(String enc) method, which takes an encoding-name
 argument, or the toString() method, which uses the
 platform's default character encoding. | 
| java.io.File.toURL() | 
| javax.swing.plaf.metal.MetalScrollPaneUI.uninstallListeners(JScrollPane)
 - Replaced by  
MetalScrollPaneUI.uninstallListeners(JComponent) | 
| 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(). | 
| javax.xml.bind.Validator.validate(Object)
 since JAXB2.0 
 | 
| javax.xml.bind.Validator.validateRoot(Object)
 since JAXB2.0 
 | 
| javax.swing.text.View.viewToModel(float, float, Shape) | 
| org.omg.CORBA.portable.OutputStream.write_Principal(Principal)
 Deprecated by CORBA 2.2. 
 | 
| java.rmi.server.LogStream.write(byte[], int, int)
 no replacement 
 | 
| java.rmi.server.LogStream.write(int)
 no replacement 
 | 
| 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. | 
| Constructor and Description | 
|---|
| javax.management.AttributeValueExp()
 An instance created with this constructor cannot be
 used in a query. 
 | 
| java.sql.Date(int, int, int)
 instead use the constructor  
Date(long date) | 
| 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). | 
| java.util.Date(int, int, int, int, int)
 As of JDK version 1.1,
 replaced by  
Calendar.set(year + 1900, month, date,
 hrs, min) or GregorianCalendar(year + 1900,
 month, date, hrs, min). | 
| java.util.Date(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). | 
| java.util.Date(String)
 As of JDK version 1.1,
 replaced by  
DateFormat.parse(String s). | 
| java.awt.event.KeyEvent(Component, int, long, int, int)
 as of JDK1.1 
 | 
| java.rmi.server.Operation(String)
 no replacement 
 | 
| java.rmi.RMISecurityException(String)
 no replacement 
 | 
| java.rmi.RMISecurityException(String, String)
 no replacement 
 | 
| java.rmi.ServerRuntimeException(String, Exception)
 no replacement 
 | 
| java.rmi.server.SkeletonMismatchException(String)
 no replacement 
 | 
| java.net.Socket(InetAddress, int, boolean)
 Use DatagramSocket instead for UDP transport. 
 | 
| java.net.Socket(String, int, boolean)
 Use DatagramSocket instead for UDP transport. 
 | 
| 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.String(byte[], 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.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. | 
| org.omg.CORBA.TCKind(int)
 Do not use this constructor as this method should be private
 according to the OMG specification. Use  
TCKind.from_int(int) instead. | 
| 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) | 
| Annotation Type Element and Description | 
|---|
| javax.jws.HandlerChain.name | 
 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, 2023, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.