Deprecated API
Contents
-
Deprecated For Removal Element Description com.sun.java.accessibility.util.AWTEventMonitor.actionListener This field is unused.com.sun.java.accessibility.util.AWTEventMonitor.adjustmentListener This field is unused.java.lang.SecurityManager.checkAwtEventQueueAccess() This method was originally used to check if the calling thread could access the AWT event queue. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("accessEventQueue")
. This method is subject to removal in a future version of Java SE.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 invokeSecurityManager.checkPermission(java.security.Permission)
directly. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.checkSystemClipboardAccess() This method was originally used to check if the calling thread could access the system clipboard. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("accessClipboard")
. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.checkTopLevelWindow(Object) This method was originally used to check if the calling thread was trusted to bring up a top-level window. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("showWindowWithoutWarningBanner")
. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.classDepth(String) This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.classLoaderDepth() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.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.com.sun.java.accessibility.util.AWTEventMonitor.componentListener This field is unused.com.sun.java.accessibility.util.AWTEventMonitor.componentWithFocus This field is unused; to get the component with focus use the getComponentWithFocus method.com.sun.java.accessibility.util.AWTEventMonitor.containerListener This field is unused.java.lang.Thread.countStackFrames() The definition of this call depends onThread.suspend()
, which is deprecated. Further, the results of this call were never well-defined. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.currentClassLoader() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.currentLoadedClass() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.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 it were to be implemented, it would be deadlock-prone in much the manner ofThread.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?. This method is subject to removal in a future version of Java SE.com.sun.java.accessibility.util.AWTEventMonitor.focusListener This field is unused.java.lang.SecurityManager.getInCheck() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.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 theInputStreamReader
andBufferedReader
classes. This method is subject to removal in a future version of Java SE.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 theOutputStreamWriter
,BufferedWriter
, andPrintWriter
classes. This method is subject to removal in a future version of Java SE.javafx.application.HostServices.getWebContext() This method is deprecated as of JDK 9 because theApplet
API is deprecated.java.lang.SecurityManager.inCheck This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This field is subject to removal in a future version of Java SE.java.lang.SecurityManager.inClass(String) This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.inClassLoader() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.com.sun.java.accessibility.util.AWTEventMonitor.itemListener This field is unused.java.activation java.corba java.se.ee java.transaction java.xml.bind java.xml.ws java.xml.ws.annotation jdk.policytool com.sun.java.accessibility.util.AWTEventMonitor.keyListener This field is unused.com.sun.java.accessibility.util.AWTEventMonitor.mouseListener This field is unused.com.sun.java.accessibility.util.AWTEventMonitor.mouseMotionListener This field is unused.com.sun.security.auth.PolicyFile As of JDK 1.4, replaced bysun.security.provider.PolicyFile
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.java.lang.Runtime.runFinalizersOnExit(boolean) This method 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. This method is subject to removal in a future version of Java SE.java.lang.System.runFinalizersOnExit(boolean) This method 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. This method is subject to removal in a future version of Java SE.com.sun.security.auth.module.SolarisLoginModule As of JDK1.4, replaced bycom.sun.security.auth.module.UnixLoginModule
. This LoginModule is entirely deprecated and is here to allow for a smooth transition to the new UnixLoginModule. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisNumericGroupPrincipal As of JDK 1.4, replaced byUnixNumericGroupPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisNumericUserPrincipal As of JDK 1.4, replaced byUnixNumericUserPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisPrincipal As of JDK 1.4, replaced byUnixPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.module.SolarisSystem replaced byUnixSystem
. This class is subject to removal in a future version of Java SE.com.sun.tools.doclets.standard.Standard The doclet has been superseded by its replacement,StandardDoclet
.java.lang.Thread.stop(Throwable) This method was originally designed to force a thread to stop and throw a givenThrowable
as an exception. It was inherently unsafe (seeThread.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?. This method is subject to removal in a future version of Java SE.com.sun.java.accessibility.util.AWTEventMonitor.textListener This field is unused.java.lang.Runtime.traceInstructions(boolean) This method was intended to control instruction tracing. It has been superseded by JVM-specific tracing mechanisms. This method is subject to removal in a future version of Java SE.java.lang.Runtime.traceMethodCalls(boolean) This method was intended to control method call tracing. It has been superseded by JVM-specific tracing mechanisms. This method is subject to removal in a future version of Java SE.com.sun.java.accessibility.util.AWTEventMonitor.windowListener This field is unused.com.sun.security.auth.X500Principal A new X500Principal class is available in the Java platform. This X500Principal classs is entirely deprecated and is here to allow for a smooth transition to the new class. This class is subject to removal in a future version of Java SE.
-
Deprecated Modules Module Description java.activation java.corba java.se.ee java.transaction java.xml.bind java.xml.ws java.xml.ws.annotation jdk.policytool
-
Deprecated Interfaces Interface Description java.security.acl.Acl This package has been replaced byjava.security.Policy
and related classes since 1.2.java.security.acl.AclEntry This package has been replaced byjava.security.Policy
and related classes since 1.2.com.sun.javadoc.AnnotatedType The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.AnnotationDesc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.AnnotationDesc.ElementValuePair The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.AnnotationTypeDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.AnnotationTypeElementDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.AnnotationValue The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.java.applet.AppletContext The Applet API is deprecated. See the java.applet package documentation for further information.java.beans.AppletInitializer The Applet API is deprecated. See the java.applet package documentation for further information.java.applet.AppletStub The Applet API is deprecated. See the java.applet package documentation for further information.org.xml.sax.AttributeList This interface has been replaced by the SAX2Attributes
interface, which includes Namespace support.java.applet.AudioClip The Applet API is deprecated. See the java.applet package documentation for further information.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.com.sun.javadoc.ClassDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.ConstructorDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.jarsigner.ContentSignerParameters This class has been deprecated.com.sun.javadoc.Doc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.DocErrorReporter The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.org.xml.sax.DocumentHandler This interface has been replaced by the SAX2ContentHandler
interface, which includes Namespace support.org.omg.CORBA.DynAny Use the new DynAny insteadorg.omg.CORBA.DynArray Use the new DynArray insteadorg.omg.CORBA.DynEnum Use the new DynEnum insteadorg.omg.CORBA.DynFixed Use the new DynFixed insteadorg.omg.CORBA.DynSequence Use the new DynSequence insteadorg.omg.CORBA.DynStruct Use the new DynStruct insteadorg.omg.CORBA.DynUnion Use the new DynUnion insteadorg.omg.CORBA.DynValue Use the new DynValue insteadcom.sun.javadoc.ExecutableMemberDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.FieldDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.java.security.acl.Group This package has been replaced byjava.security.Policy
and related classes since 1.2.java.rmi.server.LoaderHandler no replacementjava.util.logging.LoggingMXBean LoggingMXBean
is no longer aplatform MXBean
and is replaced withPlatformLoggingMXBean
. It will not register in the platformMBeanServer
. UseManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class)
instead.com.sun.javadoc.MemberDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.MethodDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.java.util.Observer This interface has been deprecated. See theObservable
class for further information.java.security.acl.Owner This package has been replaced byjava.security.Policy
and related classes since 1.2.com.sun.javadoc.PackageDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.Parameter The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.ParameterizedType The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.ParamTag The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.org.xml.sax.Parser This interface has been replaced by the SAX2XMLReader
interface, which includes Namespace support.java.security.acl.Permission This package has been replaced byjava.security.Policy
and related classes since 1.2.com.sun.javadoc.ProgramElementDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.java.rmi.registry.RegistryHandler no replacementjava.rmi.server.RemoteCall no replacement.com.sun.javadoc.RootDoc The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.SeeTag The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.SerialFieldTag The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.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.com.sun.javadoc.SourcePosition The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.Tag The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.tools.doclets.Taglet This interface has been superseded by its replacement,Taglet
.com.sun.javadoc.ThrowsTag The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.Type The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.com.sun.javadoc.TypeVariable The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.javax.xml.bind.Validator since JAXB 2.0com.sun.javadoc.WildcardType The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.
-
Deprecated Classes Class Description javax.accessibility.AccessibleResourceBundle This class is deprecated as of version 1.3 of the Java Platformjava.applet.Applet The Applet API is deprecated. See the java.applet package documentation for further information.org.xml.sax.helpers.AttributeListImpl This class implements a deprecated interface,AttributeList
; that interface has been replaced byAttributes
, which is implemented in theAttributesImpl
helper class.javax.security.cert.Certificate Use the classes injava.security.cert
instead.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.com.sun.jarsigner.ContentSigner This class has been deprecated.javax.management.DefaultLoaderRepository UseMBeanServer.getClassLoaderRepository()
instead.javax.management.loading.DefaultLoaderRepository UseMBeanServer.getClassLoaderRepository()
instead.javax.swing.text.DefaultTextUI com.sun.javadoc.Doclet The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.org.omg.CORBA.DynamicImplementation org.omg.CORBA.DynamicImplementationjava.awt.Event It is recommended thatAWTEvent
and its subclasses be used insteadorg.xml.sax.HandlerBase This class works with the deprecatedDocumentHandler
interface. It has been replaced by the SAX2DefaultHandler
class.java.security.Identity This class is no longer used. Its functionality has been replaced byjava.security.KeyStore
, thejava.security.cert
package, andjava.security.Principal
.java.security.IdentityScope This class is no longer used. Its functionality has been replaced byjava.security.KeyStore
, thejava.security.cert
package, andjava.security.Principal
.javax.swing.JApplet The Applet API is deprecated. See the java.applet package documentation for further information.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 inComponent
.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 replacementcom.sun.tools.javadoc.Main This class is now deprecated and may be removed in a future release. Seejavax.tools.ToolProvider::getSystemDocumentationTool
andjavax.tools.DocumentationTool
for replacement functionality.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.java.util.Observable This class and theObserver
interface have been deprecated. The event model supported byObserver
andObservable
is quite limited, the order of notifications delivered byObservable
is unspecified, and state changes are not in one-for-one correspondence with notifications. For a richer event model, consider using thejava.beans
package. For reliable and ordered messaging among threads, consider using one of the concurrent data structures in thejava.util.concurrent
package. For reactive streams style programming, see theFlow
API.java.rmi.server.Operation no replacementorg.xml.sax.helpers.ParserFactory This class works with the deprecatedParser
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.com.sun.security.auth.PolicyFile As of JDK 1.4, replaced bysun.security.provider.PolicyFile
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.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. SeeUnicastRemoteObject
for information about dynamic stub generation.javax.management.remote.rmi.RMIIIOPServerImpl This transport is no longer supported.java.rmi.RMISecurityManager UseSecurityManager
instead.java.security.Signer This class is no longer used. Its functionality has been replaced byjava.security.KeyStore
, thejava.security.cert
package, andjava.security.Principal
.javax.xml.soap.SOAPElementFactory - Usejavax.xml.soap.SOAPFactory
for creating SOAPElements.com.sun.security.auth.module.SolarisLoginModule As of JDK1.4, replaced bycom.sun.security.auth.module.UnixLoginModule
. This LoginModule is entirely deprecated and is here to allow for a smooth transition to the new UnixLoginModule. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisNumericGroupPrincipal As of JDK 1.4, replaced byUnixNumericGroupPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisNumericUserPrincipal As of JDK 1.4, replaced byUnixNumericUserPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.SolarisPrincipal As of JDK 1.4, replaced byUnixPrincipal
. This class is entirely deprecated. This class is subject to removal in a future version of Java SE.com.sun.security.auth.module.SolarisSystem replaced byUnixSystem
. This class is subject to removal in a future version of Java SE.com.sun.tools.doclets.standard.Standard The doclet has been superseded by its replacement,StandardDoclet
.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 theStringReader
class.javax.swing.text.TableView.TableCell A table cell can now be any View implementation.com.sun.security.auth.X500Principal A new X500Principal class is available in the Java platform. This X500Principal classs is entirely deprecated and is here to allow for a smooth transition to the new class. This class is subject to removal in a future version of Java SE.javax.security.cert.X509Certificate Use the classes injava.security.cert
instead.org.xml.sax.helpers.XMLReaderFactory It is recommended to useSAXParserFactory
instead.
-
Deprecated Enums Enum Description com.sun.javadoc.LanguageVersion The declarations in this package have been superseded by those in the packagejdk.javadoc.doclet
. For more information, see the Migration Guide in the documentation for that package.
-
Deprecated Exceptions Exceptions Description java.security.acl.AclNotFoundException This package has been replaced byjava.security.Policy
and related classes since 1.2.javax.security.cert.CertificateEncodingException Use the classes injava.security.cert
instead.javax.security.cert.CertificateException Use the classes injava.security.cert
instead.javax.security.cert.CertificateExpiredException Use the classes injava.security.cert
instead.javax.security.cert.CertificateNotYetValidException Use the classes injava.security.cert
instead.javax.security.cert.CertificateParsingException Use the classes injava.security.cert
instead.com.sun.jdi.InvalidCodeIndexException This exception is no longer throwncom.sun.jdi.InvalidLineNumberException This exception is no longer thrownjava.security.acl.LastOwnerException This package has been replaced byjava.security.Policy
and related classes since 1.2.java.security.acl.NotOwnerException This package has been replaced byjava.security.Policy
and related classes since 1.2.java.rmi.RMISecurityException UseSecurityException
instead. Application code should never directly reference this class, andRMISecurityManager
no longer throws this subclass ofjava.lang.SecurityException
.java.rmi.ServerRuntimeException no replacementjava.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. UseExportException
instead.
-
Deprecated Annotation Types Annotation Type Description javax.jws.soap.InitParam javax.jws.soap.SOAPMessageHandler javax.jws.soap.SOAPMessageHandlers
-
Deprecated Methods Method 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.javax.swing.RepaintManager.addDirtyRegion(Applet, int, int, int, int) The Applet API is deprecated. See the java.applet package documentation for further information.java.awt.List.addItem(String) replaced byadd(String)
.java.awt.List.addItem(String, int) replaced byadd(String, int)
.java.awt.BorderLayout.addLayoutComponent(String, Component) replaced byaddLayoutComponent(Component, Object)
.java.awt.CardLayout.addLayoutComponent(String, Component) replaced byaddLayoutComponent(Component, Object)
.java.awt.List.allowsMultipleSelections() As of JDK version 1.1, replaced byisMultipleMode()
.java.lang.ThreadGroup.allowThreadSuspension(boolean) The definition of this call depends onThreadGroup.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 byappend(String)
.java.awt.Window.applyResourceBundle(String) As of J2SE 1.4, replaced byComponent.applyComponentOrientation
.java.awt.Window.applyResourceBundle(ResourceBundle) As of J2SE 1.4, replaced byComponent.applyComponentOrientation
.java.awt.Component.bounds() As of JDK version 1.1, replaced bygetBounds()
.java.lang.SecurityManager.checkAwtEventQueueAccess() This method was originally used to check if the calling thread could access the AWT event queue. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("accessEventQueue")
. This method is subject to removal in a future version of Java SE.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 invokeSecurityManager.checkPermission(java.security.Permission)
directly. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.checkMulticast(InetAddress, byte) Use #checkPermission(java.security.Permission) insteadjava.lang.SecurityManager.checkSystemClipboardAccess() This method was originally used to check if the calling thread could access the system clipboard. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("accessClipboard")
. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.checkTopLevelWindow(Object) This method was originally used to check if the calling thread was trusted to bring up a top-level window. The method has been obsoleted and code should instead useSecurityManager.checkPermission(java.security.Permission)
to checkAWTPermission("showWindowWithoutWarningBanner")
. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.classDepth(String) This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.classLoaderDepth() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.awt.List.clear() As of JDK version 1.1, replaced byremoveAll()
.java.awt.image.renderable.RenderContext.concetenateTransform(AffineTransform) replaced byconcatenateTransform(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 bygetItemCount()
.java.awt.List.countItems() As of JDK version 1.1, replaced bygetItemCount()
.java.awt.Menu.countItems() As of JDK version 1.1, replaced bygetItemCount()
.java.awt.MenuBar.countMenus() As of JDK version 1.1, replaced bygetMenuCount()
.java.lang.Thread.countStackFrames() The definition of this call depends onThread.suspend()
, which is deprecated. Further, the results of this call were never well-defined. This method is subject to removal in a future version of Java SE.javax.xml.soap.SOAPElementFactory.create(String) Use javax.xml.soap.SOAPFactory.createElement(String localName) insteadjavax.xml.soap.SOAPElementFactory.create(String, String, String) Use javax.xml.soap.SOAPFactory.createElement(String localName, String prefix, String uri) insteadjavax.xml.soap.SOAPElementFactory.create(Name) Use javax.xml.soap.SOAPFactory.createElement(javax.xml.soap.Name) insteadorg.omg.CORBA.ORB.create_basic_dyn_any(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_any(Any) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_array(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_enum(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_sequence(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_struct(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_dyn_union(TypeCode) Use the new DynAnyFactory API insteadorg.omg.CORBA.ORB.create_recursive_sequence_tc(int, int) Use a combination of create_recursive_tc and create_sequence_tc insteadjavax.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 bynew 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.0java.lang.SecurityManager.currentClassLoader() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.currentLoadedClass() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.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 bydefineClass(String, byte[], int, int)
java.awt.List.delItem(int) replaced byremove(String)
andremove(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.Component.deliverEvent(Event) As of JDK version 1.1, replaced bydispatchEvent(AWTEvent e)
.java.awt.Container.deliverEvent(Event) As of JDK version 1.1, replaced bydispatchEvent(AWTEvent e)
javax.management.MBeanServer.deserialize(String, byte[]) UseMBeanServer.getClassLoaderRepository()
to obtain the class loader repository and use it to deserialize.javax.management.MBeanServer.deserialize(String, ObjectName, byte[]) UsegetClassLoader
to obtain the class loader for deserialization.javax.management.MBeanServer.deserialize(ObjectName, byte[]) UsegetClassLoaderFor
to obtain the appropriate 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 it were to be implemented, it would be deadlock-prone in much the manner ofThread.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?. This method is subject to removal in a future version of Java SE.java.awt.Component.disable() As of JDK version 1.1, replaced bysetEnabled(boolean)
.java.awt.MenuItem.disable() As of JDK version 1.1, replaced bysetEnabled(boolean)
.javax.swing.JComponent.disable() As of JDK version 1.1, replaced byjava.awt.Component.setEnabled(boolean)
.javax.swing.table.TableColumn.disableResizedPosting() as of Java 2 platform v1.3javax.swing.FocusManager.disableSwingFocusManager() as of 1.4, replaced byKeyboardFocusManager.setDefaultFocusTraversalPolicy(FocusTraversalPolicy)
java.rmi.server.Skeleton.dispatch(Remote, RemoteCall, int, long) no replacementjava.math.BigDecimal.divide(BigDecimal, int) The methodBigDecimal.divide(BigDecimal, RoundingMode)
should be used in preference to this legacy method.java.math.BigDecimal.divide(BigDecimal, int, int) The methodBigDecimal.divide(BigDecimal, int, RoundingMode)
should be used in preference to this legacy method.javafx.util.Duration.divide(Duration) This method produces surprising results by not taking units into account. UseDuration.divide(double)
instead.java.rmi.server.RemoteCall.done() no replacementjava.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
, anddone
), 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.text.PasswordView.drawEchoCharacter(Graphics, int, int, char) javax.swing.text.PlainView.drawLine(int, Graphics, int, int) javax.swing.text.WrappedPlainView.drawLine(int, int, Graphics, int, int) javax.swing.text.PasswordView.drawSelectedText(Graphics, int, int, int, int) javax.swing.text.PlainView.drawSelectedText(Graphics, int, int, int, int) javax.swing.text.WrappedPlainView.drawSelectedText(Graphics, int, int, int, int) javax.swing.text.Utilities.drawTabbedText(Segment, int, int, Graphics, TabExpander, int) javax.swing.text.PasswordView.drawUnselectedText(Graphics, int, int, int, int) javax.swing.text.PlainView.drawUnselectedText(Graphics, int, int, int, int) javax.swing.text.WrappedPlainView.drawUnselectedText(Graphics, int, int, int, int) javax.swing.plaf.metal.MetalComboBoxUI.editablePropertyChanged(PropertyChangeEvent) As of Java 2 platform v1.4.java.awt.Component.enable() As of JDK version 1.1, replaced bysetEnabled(boolean)
.java.awt.Component.enable(boolean) As of JDK version 1.1, replaced bysetEnabled(boolean)
.java.awt.MenuItem.enable() As of JDK version 1.1, replaced bysetEnabled(boolean)
.java.awt.MenuItem.enable(boolean) As of JDK version 1.1, replaced bysetEnabled(boolean)
.javax.swing.JComponent.enable() As of JDK version 1.1, replaced byjava.awt.Component.setEnabled(boolean)
.javax.swing.table.TableColumn.enableResizedPosting() as of Java 2 platform v1.3java.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 byengineSetParameter
.java.awt.datatransfer.DataFlavor.equals(String) As inconsistent withhashCode()
contract, useDataFlavor.isMimeTypeEqual(String)
instead.org.omg.CORBA.ServerRequest.except(Any) use set_exception()java.rmi.server.RemoteCall.executeCall() no replacementjava.rmi.server.UnicastRemoteObject.exportObject(Remote) This method is deprecated because it supports only static stubs. UseexportObject(Remote, port)
orexportObject(Remote, port, csf, ssf)
instead.org.omg.CORBA.Any.extract_Principal() Deprecated by CORBA 2.2.java.awt.color.ICC_Profile.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.awt.Graphics.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.awt.image.ColorModel.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.awt.image.IndexColorModel.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.awt.PrintJob.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.io.FileInputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.io.FileOutputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.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 tofinalize
methods of different objects. Furthermore, there are no guarantees regarding the timing of finalization. Thefinalize
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 implementAutoCloseable
if appropriate. TheCleaner
andPhantomReference
provide more flexible and efficient ways to release resources when an object becomes unreachable.java.util.concurrent.ThreadPoolExecutor.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.util.zip.Deflater.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.util.zip.Inflater.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.java.util.zip.ZipFile.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.spi.ServiceRegistry.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.stream.FileCacheImageInputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.stream.FileImageInputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.stream.FileImageOutputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.stream.ImageInputStreamImpl.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.imageio.stream.MemoryCacheImageInputStream.finalize() Thefinalize
method has been deprecated. Subclasses that overridefinalize
in order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalize
method. When overriding thefinalize
method, its implementation must explicitly ensure thatsuper.finalize()
is invoked as described inObject.finalize()
. See the specification forObject.finalize()
for further information about migration options.javax.swing.SwingUtilities.findFocusOwner(Component) As of 1.4, replaced byKeyboardFocusManager.getFocusOwner()
.org.omg.CORBA.ORB.get_current() useresolve_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-independentAlgorithmParameters
andKeyFactory
engine classes (introduced in the J2SE version 1.2 platform) instead.java.sql.CallableStatement.getBigDecimal(int, int) usegetBigDecimal(int parameterIndex)
orgetBigDecimal(String parameterName)
java.sql.ResultSet.getBigDecimal(int, int) UsegetBigDecimal(int columnIndex)
orgetBigDecimal(String columnLabel)
java.sql.ResultSet.getBigDecimal(String, int) UsegetBigDecimal(int columnIndex)
orgetBigDecimal(String columnLabel)
java.awt.Polygon.getBoundingBox() As of JDK version 1.1, replaced bygetBounds()
.javax.swing.text.Utilities.getBreakLocation(Segment, FontMetrics, int, int, TabExpander, int) 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 theString.getBytes()
method, which uses the platform's default charset.java.awt.Graphics.getClipRect() As of JDK version 1.1, replaced bygetClipBounds()
.javax.swing.JMenuBar.getComponentAtIndex(int) replaced bygetComponent(int i)
javax.swing.JPopupMenu.getComponentAtIndex(int) replaced byContainer.getComponent(int)
java.awt.CheckboxGroup.getCurrent() As of JDK version 1.1, replaced bygetSelectedCheckbox()
.java.awt.Frame.getCursorType() As of JDK version 1.1, replaced byComponent.getCursor()
.java.sql.Time.getDate() java.util.Date.getDate() As of JDK version 1.1, replaced byCalendar.get(Calendar.DAY_OF_MONTH)
.java.sql.Time.getDay() java.util.Date.getDay() As of JDK version 1.1, replaced byCalendar.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 replacementjdk.nashorn.api.scripting.AbstractJSObject.getDefaultValue(JSObject, Class<?>) useJSObject.getDefaultValue(Class)
instead.javax.management.monitor.CounterMonitor.getDerivedGauge() As of JMX 1.2, replaced byCounterMonitor.getDerivedGauge(ObjectName)
javax.management.monitor.CounterMonitorMBean.getDerivedGauge() As of JMX 1.2, replaced byCounterMonitorMBean.getDerivedGauge(ObjectName)
javax.management.monitor.GaugeMonitor.getDerivedGauge() As of JMX 1.2, replaced byGaugeMonitor.getDerivedGauge(ObjectName)
javax.management.monitor.GaugeMonitorMBean.getDerivedGauge() As of JMX 1.2, replaced byGaugeMonitorMBean.getDerivedGauge(ObjectName)
javax.management.monitor.StringMonitor.getDerivedGauge() As of JMX 1.2, replaced byStringMonitor.getDerivedGauge(ObjectName)
javax.management.monitor.StringMonitorMBean.getDerivedGauge() As of JMX 1.2, replaced byStringMonitorMBean.getDerivedGauge(ObjectName)
javax.management.monitor.CounterMonitor.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byCounterMonitor.getDerivedGaugeTimeStamp(ObjectName)
javax.management.monitor.CounterMonitorMBean.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byCounterMonitorMBean.getDerivedGaugeTimeStamp(ObjectName)
javax.management.monitor.GaugeMonitor.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byGaugeMonitor.getDerivedGaugeTimeStamp(ObjectName)
javax.management.monitor.GaugeMonitorMBean.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byGaugeMonitorMBean.getDerivedGaugeTimeStamp(ObjectName)
javax.management.monitor.StringMonitor.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byStringMonitor.getDerivedGaugeTimeStamp(ObjectName)
javax.management.monitor.StringMonitorMBean.getDerivedGaugeTimeStamp() As of JMX 1.2, replaced byStringMonitorMBean.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.0java.awt.Toolkit.getFontList() java.awt.Toolkit.getFontMetrics(Font) As of JDK version 1.2, replaced by theFont
methodgetLineMetrics
.javax.swing.text.LabelView.getFontMetrics() FontMetrics are not used for glyph rendering when running in the JDK.java.sql.Date.getHours() java.util.Date.getHours() As of JDK version 1.1, replaced byCalendar.get(Calendar.HOUR_OF_DAY)
.java.lang.SecurityManager.getInCheck() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.rmi.server.RemoteCall.getInputStream() no replacementjava.awt.event.KeyEvent.getKeyModifiersText(int) It is recommended that extended modifier keys andInputEvent.getModifiersExText(int)
be used insteadjavax.swing.KeyStroke.getKeyStroke(char, boolean) use getKeyStroke(char)javax.swing.AbstractButton.getLabel() - Replaced bygetText
javafx.scene.media.AudioTrack.getLanguage() UseTrack.getLocale()
instead.java.awt.Scrollbar.getLineIncrement() As of JDK version 1.1, replaced bygetUnitIncrement()
.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 theInputStreamReader
andBufferedReader
classes. This method is subject to removal in a future version of Java SE.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 theOutputStreamWriter
,BufferedWriter
, andPrintWriter
classes. This method is subject to removal in a future version of Java SE.java.util.logging.LogManager.getLoggingMXBean() java.util.logging.LoggingMXBean
is deprecated and replaced withjava.lang.management.PlatformLoggingMXBean
. UseManagementFactory.getPlatformMXBean
(PlatformLoggingMXBean.class) instead.java.sql.DriverManager.getLogStream() UsegetLogWriter
java.awt.FontMetrics.getMaxDecent() As of JDK version 1.1.1, replaced bygetMaxDescent()
.javax.swing.JInternalFrame.getMenuBar() As of Swing version 1.0.3, replaced bygetJMenuBar()
.javax.swing.JRootPane.getMenuBar() As of Swing version 1.0.3 replaced bygetJMenuBar()
.java.sql.Date.getMinutes() java.util.Date.getMinutes() As of JDK version 1.1, replaced byCalendar.get(Calendar.MINUTE)
.java.awt.event.InputEvent.getModifiers() It is recommended that extended modifier keys andInputEvent.getModifiersEx()
be used insteadjava.sql.Time.getMonth() java.util.Date.getMonth() As of JDK version 1.1, replaced byCalendar.get(Calendar.MONTH)
.javax.swing.JComponent.getNextFocusableComponent() As of 1.4, replaced byFocusTraversalPolicy
.javafx.scene.control.TreeTableView.getNodeLevel(TreeItem<?>) This method does not correctly calculate the distance from the given TreeItem to the root of the TreeTableView. As of JavaFX 8.0_20, the proper way to do this is viaTreeTableView.getTreeItemLevel(TreeItem)
javafx.scene.control.TreeView.getNodeLevel(TreeItem<?>) This method does not correctly calculate the distance from the given TreeItem to the root of the TreeView. As of JavaFX 8.0_20, the proper way to do this is viaTreeView.getTreeItemLevel(TreeItem)
javax.management.monitor.Monitor.getObservedObject() As of JMX 1.2, replaced byMonitor.getObservedObjects()
javax.management.monitor.MonitorMBean.getObservedObject() As of JMX 1.2, replaced byMonitorMBean.getObservedObjects()
java.rmi.server.Operation.getOperation() no replacementjava.rmi.server.Skeleton.getOperations() no replacementjava.awt.ComponentOrientation.getOrientation(ResourceBundle) As of J2SE 1.4, useComponentOrientation.getOrientation(java.util.Locale)
.java.rmi.server.LogStream.getOutputStream() no replacementjava.rmi.server.RemoteCall.getOutputStream() no replacementjava.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 ofgetPackage
to return aPackage
from a parent loader, then the properties exposed by thePackage
may not be as expected in the rest of the program. For example, thePackage
will only expose annotations from thepackage-info.class
file defined by the parent loader, even if annotations exist in apackage-info.class
file defined by a child loader. A more robust approach is to use theClassLoader.getDefinedPackage(java.lang.String)
method which returns aPackage
for the specified class loader.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 ofgetPackage
to return aPackage
from a parent loader, then the properties exposed by thePackage
may not be as expected in the rest of the program. For example, thePackage
will only expose annotations from thepackage-info.class
file defined by the parent loader, even if annotations exist in apackage-info.class
file defined by a child loader. A more robust approach is to use theClassLoader.getDefinedPackage(java.lang.String)
method which returns aPackage
for the specified class loader.java.awt.Scrollbar.getPageIncrement() As of JDK version 1.1, replaced bygetBlockIncrement()
.java.security.Signature.getParameter(String) javax.net.ssl.HandshakeCompletedEvent.getPeerCertificateChain() TheHandshakeCompletedEvent.getPeerCertificates()
method that returns an array ofjava.security.cert.Certificate
should be used instead.javax.net.ssl.SSLSession.getPeerCertificateChain() TheSSLSession.getPeerCertificates()
method that returns an array ofjava.security.cert.Certificate
should be used instead.javax.swing.text.Utilities.getPositionAbove(JTextComponent, int, int) javax.swing.text.Utilities.getPositionBelow(JTextComponent, int, int) javax.xml.bind.Validator.getProperty(String) since JAXB2.0java.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 throwIllegalAccessException
when it is called on an inaccessible proxy class. UseProxy.newProxyInstance(ClassLoader, Class[], InvocationHandler)
to create a proxy instance instead.java.rmi.server.RemoteCall.getResultStream(boolean) no replacementjava.sql.Date.getSeconds() java.util.Date.getSeconds() As of JDK version 1.1, replaced byCalendar.get(Calendar.SECOND)
.java.rmi.server.LoaderHandler.getSecurityContext(ClassLoader) no replacementjava.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.javax.swing.JList.getSelectedValues() As of JDK 1.7, replaced byJList.getSelectedValuesList()
javax.tools.ToolProvider.getSystemToolClassLoader() This method is subject to removal in a future version of Java SE. Use thesystem tool provider
orservice loader
mechanisms to locate system tools as well as user-installed tools.javax.swing.text.Utilities.getTabbedTextOffset(Segment, FontMetrics, int, int, TabExpander, int) javax.swing.text.Utilities.getTabbedTextOffset(Segment, FontMetrics, int, int, TabExpander, int, boolean) javax.swing.text.Utilities.getTabbedTextWidth(Segment, FontMetrics, int, TabExpander, int) javax.swing.JPasswordField.getText() As of Java 2 platform v1.2, replaced bygetPassword
.javax.swing.JPasswordField.getText(int, int) As of Java 2 platform v1.2, replaced bygetPassword
.javax.management.monitor.CounterMonitor.getThreshold() As of JMX 1.2, replaced byCounterMonitor.getThreshold(ObjectName)
javax.management.monitor.CounterMonitorMBean.getThreshold() As of JMX 1.2, replaced byCounterMonitorMBean.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)
.javax.swing.plaf.TextUI.getToolTipText(JTextComponent, Point) replaced byTextUI.getToolTipText2D(JTextComponent, Point2D)
java.net.DatagramSocketImpl.getTTL() use getTimeToLive instead.java.net.MulticastSocket.getTTL() use the getTimeToLive method instead, which returns an int instead of a byte.java.sql.ResultSet.getUnicodeStream(int) usegetCharacterStream
in place ofgetUnicodeStream
java.sql.ResultSet.getUnicodeStream(String) usegetCharacterStream
insteadjava.security.Provider.getVersion() useProvider.getVersionStr()
instead.javax.swing.ScrollPaneLayout.getViewportBorderBounds(JScrollPane) As of JDK version Swing1.1 replaced byJScrollPane.getViewportBorderBounds()
.java.awt.Scrollbar.getVisible() As of JDK version 1.1, replaced bygetVisibleAmount()
.javafx.application.HostServices.getWebContext() This method is deprecated as of JDK 9 because theApplet
API is deprecated.netscape.javascript.JSObject.getWindow(Applet) The Applet API is deprecated. See the java.applet package documentation for further information.java.sql.Time.getYear() java.util.Date.getYear() As of JDK version 1.1, replaced byCalendar.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.Component.hide() As of JDK version 1.1, replaced bysetVisible(boolean)
.java.awt.Dialog.hide() As of JDK version 1.5, replaced bysetVisible(boolean)
.java.awt.Window.hide() As of JDK version 1.5, replaced byWindow.setVisible(boolean)
.javax.swing.JComponent.hide() com.sun.javadoc.ClassDoc.importedClasses() Import declarations are implementation details that should not be exposed here. In addition, not all imported classes are imported through single-type-import declarations.com.sun.javadoc.ClassDoc.importedPackages() Import declarations are implementation details that should not be exposed here. In addition, this method's return type does not allow for all type-import-on-demand declarations to be returned.java.lang.SecurityManager.inClass(String) This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.java.lang.SecurityManager.inClassLoader() This type of security checking is not recommended. It is recommended that thecheckPermission
call be used instead. This method is subject to removal in a future version of Java SE.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 insertAtBoundaryjava.awt.TextArea.insertText(String, int) As of JDK version 1.1, replaced byinsert(String, int)
.java.awt.Container.insets() As of JDK version 1.1, replaced bygetInsets()
.java.awt.Component.inside(int, int) As of JDK version 1.1, replaced by contains(int, int).java.awt.Polygon.inside(int, int) As of JDK version 1.1, replaced bycontains(int, int)
.java.awt.Rectangle.inside(int, int) As of JDK version 1.1, replaced bycontains(int, int)
.java.beans.Beans.instantiate(ClassLoader, String, BeanContext, AppletInitializer) It is recommended to useBeans.instantiate(ClassLoader, String, BeanContext)
, because the Applet API is deprecated. See the java.applet package documentation for further information.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
, anddone
), 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 Adapterjava.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 returnfalse
on a reflected object that is accessible to the caller. To test if this reflected object is accessible, it should useAccessibleObject.canAccess(Object)
.javax.swing.JViewport.isBackingStoreEnabled() As of Java 2 platform v1.3, replaced bygetScrollMode()
.javax.swing.FocusManager.isFocusManagerEnabled() As of 1.4, replaced byKeyboardFocusManager.getDefaultFocusTraversalPolicy()
java.awt.Component.isFocusTraversable() As of 1.4, replaced byisFocusable()
.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 byComponent.setFocusTraversalKeys(int, Set)
andContainer.setFocusCycleRoot(boolean)
.java.awt.List.isSelected(int) As of JDK version 1.1, replaced byisIndexSelected(int)
.java.lang.Character.isSpace(char) Replaced by isWhitespace(char).java.rmi.dgc.VMID.isUnique() javax.xml.bind.Unmarshaller.isValidating() since JAXB2.0, please seeUnmarshaller.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.Component.layout() As of JDK version 1.1, replaced bydoLayout()
.java.awt.Container.layout() As of JDK version 1.1, replaced bydoLayout()
.java.awt.ScrollPane.layout() As of JDK version 1.1, replaced bydoLayout()
.java.rmi.server.LoaderHandler.loadClass(String) no replacementjava.rmi.server.LoaderHandler.loadClass(URL, String) no replacementjava.rmi.server.RMIClassLoader.loadClass(String) replaced byloadClass(String,String)
methodjavafx.fxml.FXMLLoader.loadType(String) This method now delegates toFXMLLoader.getDefaultClassLoader()
.javafx.fxml.FXMLLoader.loadType(String, String) This method now delegates toFXMLLoader.getDefaultClassLoader()
.java.awt.Component.locate(int, int) As of JDK version 1.1, replaced by getComponentAt(int, int).java.awt.Container.locate(int, int) As of JDK version 1.1, replaced bygetComponentAt(int, int)
.java.awt.Component.location() As of JDK version 1.1, replaced bygetLocation()
.java.rmi.server.LogStream.log(String) no replacementjava.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.Component.minimumSize() As of JDK version 1.1, replaced bygetMinimumSize()
.java.awt.Container.minimumSize() As of JDK version 1.1, replaced bygetMinimumSize()
.java.awt.List.minimumSize() As of JDK version 1.1, replaced bygetMinimumSize()
.java.awt.List.minimumSize(int) As of JDK version 1.1, replaced bygetMinimumSize(int)
.java.awt.TextArea.minimumSize() As of JDK version 1.1, replaced bygetMinimumSize()
.java.awt.TextArea.minimumSize(int, int) As of JDK version 1.1, replaced bygetMinimumSize(int, int)
.java.awt.TextField.minimumSize() As of JDK version 1.1, replaced bygetMinimumSize()
.java.awt.TextField.minimumSize(int) As of JDK version 1.1, replaced bygetMinimumSize(int)
.javax.swing.plaf.basic.BasicTextUI.modelToView(JTextComponent, int) javax.swing.plaf.basic.BasicTextUI.modelToView(JTextComponent, int, Position.Bias) javax.swing.plaf.multi.MultiTextUI.modelToView(JTextComponent, int) javax.swing.plaf.multi.MultiTextUI.modelToView(JTextComponent, int, Position.Bias) javax.swing.plaf.TextUI.modelToView(JTextComponent, int) javax.swing.plaf.TextUI.modelToView(JTextComponent, int, Position.Bias) javax.swing.text.JTextComponent.modelToView(int) replaced byJTextComponent.modelToView2D(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 bysetLocation(int, int)
.java.awt.Rectangle.move(int, int) As of JDK version 1.1, replaced bysetLocation(int, int)
.javafx.util.Duration.multiply(Duration) This method produces surprising results by not taking units into account. UseDuration.multiply(double)
instead.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
, anddone
), 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.XMLInputFactory.newFactory() 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. TheConstructor.newInstance
method avoids this problem by wrapping any exception thrown by the constructor in a (checked)InvocationTargetException
.The call
can be replaced byclazz.newInstance()
The latter sequence of calls is inferred to be able to throw the additional exception typesclazz.getDeclaredConstructor().newInstance()
InvocationTargetException
andNoSuchMethodException
. Both of these exception types are subclasses ofReflectiveOperationException
.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 replacementXMLEventFactory.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 replacementXMLInputFactory.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 methodXMLOutputFactory.newFactory(java.lang.String, java.lang.ClassLoader)
instead.java.awt.Component.nextFocus() As of JDK version 1.1, replaced by transferFocus().java.awt.datatransfer.DataFlavor.normalizeMimeType(String) This method is never invoked by this implementation from 1.1 onwardsjavax.activation.ActivationDataFlavor.normalizeMimeType(String) java.awt.datatransfer.DataFlavor.normalizeMimeTypeParameter(String, String) This method is never invoked by this implementation from 1.1 onwardsjavax.activation.ActivationDataFlavor.normalizeMimeTypeParameter(String, String) javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(Vector<?>, TreePath) As of JDK version 1.7org.omg.CORBA.ServerRequest.op_name() use operation()org.omg.CORBA.ServerRequest.params(NVList) use the methodarguments
java.util.Date.parse(String) As of JDK version 1.1, replaced byDateFormat.parse(String s)
.java.rmi.server.LogStream.parseLevel(String) no replacementjava.awt.Component.postEvent(Event) As of JDK version 1.1, replaced by dispatchEvent(AWTEvent).java.awt.MenuComponent.postEvent(Event) As of JDK version 1.1, replaced bydispatchEvent
.java.awt.MenuContainer.postEvent(Event) As of JDK version 1.1 replaced by dispatchEvent(AWTEvent).java.awt.Window.postEvent(Event) As of JDK version 1.1 replaced bydispatchEvent(AWTEvent)
.java.awt.image.renderable.RenderContext.preConcetenateTransform(AffineTransform) replaced bypreConcatenateTransform(AffineTransform)
.java.awt.Component.preferredSize() As of JDK version 1.1, replaced bygetPreferredSize()
.java.awt.Container.preferredSize() As of JDK version 1.1, replaced bygetPreferredSize()
.java.awt.List.preferredSize() As of JDK version 1.1, replaced bygetPreferredSize()
.java.awt.List.preferredSize(int) As of JDK version 1.1, replaced bygetPreferredSize(int)
.java.awt.TextArea.preferredSize() As of JDK version 1.1, replaced bygetPreferredSize()
.java.awt.TextArea.preferredSize(int, int) As of JDK version 1.1, replaced bygetPreferredSize(int, int)
.java.awt.TextField.preferredSize() As of JDK version 1.1, replaced bygetPreferredSize()
.java.awt.TextField.preferredSize(int) As of JDK version 1.1, replaced bygetPreferredSize(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 theBufferedReader.readLine()
method. Programs that use theDataInputStream
class to read lines can be converted to use theBufferedReader
class by replacing code of the form:
with:DataInputStream d = new DataInputStream(in);
BufferedReader d = new BufferedReader(new InputStreamReader(in));
java.io.ObjectInputStream.readLine() This method does not properly convert bytes to characters. see DataInputStream for the details and alternatives.java.awt.AWTKeyStroke.registerSubclass(Class<?>) java.rmi.registry.RegistryHandler.registryImpl(int) no replacement. As of the Java 2 platform v1.2, RMI no longer uses theRegistryHandler
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 theRegistryHandler
to obtain the registry's stub.java.rmi.server.RemoteCall.releaseInputStream() no replacementjava.rmi.server.RemoteCall.releaseOutputStream() no replacementjavax.swing.plaf.metal.MetalComboBoxUI.removeListeners() As of Java 2 platform v1.4.java.awt.TextArea.replaceText(String, int, int) As of JDK version 1.1, replaced byreplaceRange(String, int, int)
.javax.swing.JComponent.requestDefaultFocus() As of 1.4, replaced byFocusTraversalPolicy.getDefaultComponent(Container).requestFocus()
java.awt.Component.reshape(int, int, int, int) As of JDK version 1.1, replaced bysetBounds(int, int, int, int)
.java.awt.Rectangle.reshape(int, int, int, int) As of JDK version 1.1, replaced bysetBounds(int, int, int, int)
.java.awt.Window.reshape(int, int, int, int) As of JDK version 1.1, replaced bysetBounds(int, int, int, int)
.javax.swing.JComponent.reshape(int, int, int, int) As of JDK 5, replaced byComponent.setBounds(int, int, int, int)
.Moves and resizes this component.
java.awt.Component.resize(int, int) As of JDK version 1.1, replaced bysetSize(int, int)
.java.awt.Component.resize(Dimension) As of JDK version 1.1, replaced bysetSize(Dimension)
.java.awt.Rectangle.resize(int, int) As of JDK version 1.1, replaced bysetSize(int, int)
.org.omg.CORBA.ServerRequest.result(Any) use the methodset_result
java.lang.Thread.resume() This method exists solely for use withThread.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.ThreadGroup.resume() This method is used solely in conjunction withThread.suspend
andThreadGroup.suspend
, both of which have been deprecated, as they are inherently deadlock-prone. SeeThread.suspend()
for details.java.lang.Runtime.runFinalizersOnExit(boolean) This method 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. This method is subject to removal in a future version of Java SE.java.lang.System.runFinalizersOnExit(boolean) This method 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. This method is subject to removal in a future version of Java SE.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 thestore(OutputStream out, String comments)
method or thestoreToXML(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); ......javafx.css.CssMetaData.set(S, V, StyleOrigin) This method is no longer called from CSS code. UseStyleableProperty.applyStyle(javafx.css.StyleOrigin, java.lang.Object)
javax.swing.JViewport.setBackingStoreEnabled(boolean) As of Java 2 platform v1.3, replaced bysetScrollMode()
.java.awt.CheckboxGroup.setCurrent(Checkbox) As of JDK version 1.1, replaced bysetSelectedCheckbox(Checkbox)
.java.awt.Frame.setCursor(int) As of JDK version 1.1, replaced byComponent.setCursor(Cursor)
.java.sql.Time.setDate(int) java.util.Date.setDate(int) As of JDK version 1.1, replaced byCalendar.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 replacementjava.awt.TextField.setEchoCharacter(char) As of JDK version 1.1, replaced bysetEchoChar(char)
.javax.xml.bind.Validator.setEventHandler(ValidationEventHandler) since JAXB2.0java.sql.Date.setHours(int) java.util.Date.setHours(int) As of JDK version 1.1, replaced byCalendar.set(Calendar.HOUR_OF_DAY, int hours)
.javax.swing.AbstractButton.setLabel(String) - Replaced bysetText(text)
java.awt.Scrollbar.setLineIncrement(int) As of JDK version 1.1, replaced bysetUnitIncrement(int)
.java.sql.DriverManager.setLogStream(PrintStream) UsesetLogWriter
javax.management.AttributeValueExp.setMBeanServer(MBeanServer) This method has no effect. The MBean Server used to obtain an attribute value isQueryEval.getMBeanServer()
.javax.management.StringValueExp.setMBeanServer(MBeanServer) javax.management.ValueExp.setMBeanServer(MBeanServer) This method is not needed because aValueExp
can access the MBean server in which it is being evaluated by usingQueryEval.getMBeanServer()
.javax.swing.JInternalFrame.setMenuBar(JMenuBar) As of Swing version 1.0.3 replaced bysetJMenuBar(JMenuBar m)
.javax.swing.JRootPane.setMenuBar(JMenuBar) As of Swing version 1.0.3 replaced bysetJMenuBar(JMenuBar menu)
.java.util.logging.LogRecord.setMillis(long) LogRecord maintains timestamps with nanosecond resolution, usingInstant
values. For this reason,setInstant()
should be used in preference tosetMillis()
.java.sql.Date.setMinutes(int) java.util.Date.setMinutes(int) As of JDK version 1.1, replaced byCalendar.set(Calendar.MINUTE, int minutes)
.java.awt.event.KeyEvent.setModifiers(int) as of JDK1.1.4java.sql.Time.setMonth(int) java.util.Date.setMonth(int) As of JDK version 1.1, replaced byCalendar.set(Calendar.MONTH, int month)
.java.awt.List.setMultipleSelections(boolean) As of JDK version 1.1, replaced bysetMultipleMode(boolean)
.javax.swing.JComponent.setNextFocusableComponent(Component) As of 1.4, replaced byFocusTraversalPolicy
javax.management.monitor.Monitor.setObservedObject(ObjectName) As of JMX 1.2, replaced byMonitor.addObservedObject(javax.management.ObjectName)
javax.management.monitor.MonitorMBean.setObservedObject(ObjectName) As of JMX 1.2, replaced byMonitorMBean.addObservedObject(javax.management.ObjectName)
java.rmi.server.LogStream.setOutputStream(OutputStream) no replacementjava.awt.Scrollbar.setPageIncrement(int) As of JDK version 1.1, replaced bysetBlockIncrement()
.java.security.Signature.setParameter(String, Object) UsesetParameter
.javax.xml.bind.Validator.setProperty(String, Object) since JAXB2.0java.rmi.server.RemoteStub.setRef(RemoteStub, RemoteRef) No replacement. ThesetRef
method was intended for setting the remote reference of a remote stub. This is unnecessary, sinceRemoteStub
s can be created and initialized with a remote reference through use of theRemoteStub(RemoteRef)
constructor.java.math.BigDecimal.setScale(int, int) The methodBigDecimal.setScale(int, RoundingMode)
should be used in preference to this legacy method.java.sql.Date.setSeconds(int) java.util.Date.setSeconds(int) As of JDK version 1.1, replaced byCalendar.set(Calendar.SECOND, int seconds)
.javax.management.monitor.CounterMonitor.setThreshold(Number) As of JMX 1.2, replaced byCounterMonitor.setInitThreshold(java.lang.Number)
javax.management.monitor.CounterMonitorMBean.setThreshold(Number) As of JMX 1.2, replaced byCounterMonitorMBean.setInitThreshold(java.lang.Number)
java.net.DatagramSocketImpl.setTTL(byte) use setTimeToLive instead.java.net.MulticastSocket.setTTL(byte) use the setTimeToLive method instead, which uses int instead of byte as the type for ttl.java.sql.PreparedStatement.setUnicodeStream(int, InputStream, int) UsesetCharacterStream
javax.sql.rowset.BaseRowSet.setUnicodeStream(int, InputStream, int) getCharacterStream should be used in its placejava.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 seeUnmarshaller.setSchema(javax.xml.validation.Schema)
java.sql.Time.setYear(int) java.util.Date.setYear(int) As of JDK version 1.1, replaced byCalendar.set(Calendar.YEAR, year + 1900)
.javax.swing.InputVerifier.shouldYieldFocus(JComponent) java.awt.Component.show() As of JDK version 1.1, replaced bysetVisible(boolean)
.java.awt.Component.show(boolean) As of JDK version 1.1, replaced bysetVisible(boolean)
.java.awt.Dialog.show() As of JDK version 1.5, replaced bysetVisible(boolean)
.java.awt.Window.show() As of JDK version 1.5, replaced byWindow.setVisible(boolean)
.java.awt.Component.size() As of JDK version 1.1, replaced bygetSize()
.javax.swing.JTable.sizeColumnsToFit(boolean) As of Swing version 1.0.3, replaced bydoLayout()
.javafx.scene.control.SkinBase.snapPosition(double) replaced bysnapPositionX()
andsnapPositionY()
javafx.scene.layout.Region.snapPosition(double) replaced bysnapPositionX()
andsnapPositionY()
javafx.scene.control.SkinBase.snapSize(double) replaced bysnapSizeX()
andsnapSizeY()
javafx.scene.layout.Region.snapSize(double) replaced bysnapSizeX()
andsnapSizeY()
javafx.scene.control.SkinBase.snapSpace(double) replaced bysnapSpaceX()
andsnapSpaceY()
javafx.scene.layout.Region.snapSpace(double) replaced bysnapSpaceX()
andsnapSpaceY()
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 uncheckedThreadDeath
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 ofstop
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), theinterrupt
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 givenThrowable
as an exception. It was inherently unsafe (seeThread.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?. This method is subject to removal in a future version of Java SE.java.lang.ThreadGroup.stop() This method is inherently unsafe. SeeThread.stop()
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 callingresume
, 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.suspend() This method is inherently deadlock-prone. SeeThread.suspend()
for details.java.util.Date.toGMTString() As of JDK version 1.1, replaced byDateFormat.format(Date date)
, using a GMTTimeZone
.java.util.Date.toLocaleString() As of JDK version 1.1, replaced byDateFormat.format(Date date)
.jdk.nashorn.api.scripting.AbstractJSObject.toNumber() useJSObject.getDefaultValue(Class)
withNumber
hint instead.jdk.nashorn.api.scripting.JSObject.toNumber() useJSObject.getDefaultValue(Class)
withNumber
hint instead.jdk.nashorn.api.scripting.ScriptObjectMirror.toNumber() 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 thetoString(String enc)
method, which takes an encoding-name argument, or thetoString()
method, which uses the platform's default character encoding.java.rmi.server.LogStream.toString() no replacementjava.rmi.server.Operation.toString() no replacementjava.io.File.toURL() java.lang.Runtime.traceInstructions(boolean) This method was intended to control instruction tracing. It has been superseded by JVM-specific tracing mechanisms. This method is subject to removal in a future version of Java SE.java.lang.Runtime.traceMethodCalls(boolean) This method was intended to control method call tracing. It has been superseded by JVM-specific tracing mechanisms. This method is subject to removal in a future version of Java SE.javax.swing.plaf.metal.MetalScrollPaneUI.uninstallListeners(JScrollPane) - Replaced byMetalScrollPaneUI.uninstallListeners(JComponent)
java.util.Date.UTC(int, int, int, int, int, int) As of JDK version 1.1, replaced byCalendar.set(year + 1900, month, date, hrs, min, sec)
orGregorianCalendar(year + 1900, month, date, hrs, min, sec)
, using a UTCTimeZone
, followed byCalendar.getTime().getTime()
.javax.xml.bind.Validator.validate(Object) since JAXB2.0javax.xml.bind.Validator.validateRoot(Object) since JAXB2.0javax.swing.plaf.basic.BasicTextUI.viewToModel(JTextComponent, Point) javax.swing.plaf.basic.BasicTextUI.viewToModel(JTextComponent, Point, Position.Bias[]) javax.swing.plaf.multi.MultiTextUI.viewToModel(JTextComponent, Point) javax.swing.plaf.multi.MultiTextUI.viewToModel(JTextComponent, Point, Position.Bias[]) javax.swing.plaf.TextUI.viewToModel(JTextComponent, Point) javax.swing.plaf.TextUI.viewToModel(JTextComponent, Point, Position.Bias[]) javax.swing.text.JTextComponent.viewToModel(Point) replaced byJTextComponent.viewToModel2D(Point2D)
javax.swing.text.View.viewToModel(float, float, Shape) 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 asAtomicBoolean.compareAndExchange(boolean, boolean)
andAtomicBoolean.compareAndSet(boolean, boolean)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicBoolean.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 asAtomicInteger.compareAndExchange(int, int)
andAtomicInteger.compareAndSet(int, int)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicInteger.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 asAtomicIntegerArray.compareAndExchange(int, int, int)
andAtomicIntegerArray.compareAndSet(int, int, int)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicIntegerArray.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 asAtomicLong.compareAndExchange(long, long)
andAtomicLong.compareAndSet(long, long)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicLong.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 asAtomicLongArray.compareAndExchange(int, long, long)
andAtomicLongArray.compareAndSet(int, long, long)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicLongArray.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 asAtomicReference.compareAndExchange(V, V)
andAtomicReference.compareAndSet(V, V)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicReference.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 asAtomicReferenceArray.compareAndExchange(int, E, E)
andAtomicReferenceArray.compareAndSet(int, E, E)
). To avoid confusion over plain or volatile memory effects it is recommended that the methodAtomicReferenceArray.weakCompareAndSetPlain(int, E, E)
be used instead.java.io.ObjectOutputStream.PutField.write(ObjectOutput) This method does not write the values contained by thisPutField
object in a proper format, and may result in corruption of the serialization stream. The correct way to writePutField
data is by calling theObjectOutputStream.writeFields()
method.java.rmi.server.LogStream.write(byte[], int, int) no replacementjava.rmi.server.LogStream.write(int) no replacementorg.omg.CORBA.portable.OutputStream.write_Principal(Principal) Deprecated by CORBA 2.2.
-
Deprecated Constructors Constructor Description javax.lang.model.util.AbstractAnnotationValueVisitor6() Release 6 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.AbstractTypeVisitor6() Release 6 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.java.security.AuthProvider(String, double, String) useAuthProvider(String, String, String)
instead.java.awt.AWTEvent(Event) It is recommended thatAWTEvent(Object, int)
be used insteadjava.lang.Boolean(boolean) It is rarely appropriate to use this constructor. The static factoryBoolean.valueOf(boolean)
is generally a better choice, as it is likely to yield significantly better space and time performance. Also consider using the final fieldsBoolean.TRUE
andBoolean.FALSE
if possible.java.lang.Boolean(String) It is rarely appropriate to use this constructor. UseBoolean.parseBoolean(String)
to convert a string to aboolean
primitive, or useBoolean.valueOf(String)
to convert a string to aBoolean
object.java.lang.Byte(byte) It is rarely appropriate to use this constructor. The static factoryByte.valueOf(byte)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Byte(String) It is rarely appropriate to use this constructor. UseByte.parseByte(String)
to convert a string to abyte
primitive, or useByte.valueOf(String)
to convert a string to aByte
object.java.lang.Character(char) It is rarely appropriate to use this constructor. The static factoryCharacter.valueOf(char)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.sql.Date(int, int, int) instead use the constructorDate(long date)
java.util.Date(int, int, int) As of JDK version 1.1, replaced byCalendar.set(year + 1900, month, date)
orGregorianCalendar(year + 1900, month, date)
.java.util.Date(int, int, int, int, int) As of JDK version 1.1, replaced byCalendar.set(year + 1900, month, date, hrs, min)
orGregorianCalendar(year + 1900, month, date, hrs, min)
.java.util.Date(int, int, int, int, int, int) As of JDK version 1.1, replaced byCalendar.set(year + 1900, month, date, hrs, min, sec)
orGregorianCalendar(year + 1900, month, date, hrs, min, sec)
.java.util.Date(String) As of JDK version 1.1, replaced byDateFormat.parse(String s)
.java.lang.Double(double) It is rarely appropriate to use this constructor. The static factoryDouble.valueOf(double)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Double(String) It is rarely appropriate to use this constructor. UseDouble.parseDouble(String)
to convert a string to adouble
primitive, or useDouble.valueOf(String)
to convert a string to aDouble
object.javax.lang.model.util.ElementKindVisitor6() Release 6 is obsolete; update to a visitor for a newer release level.javax.lang.model.util.ElementKindVisitor6(R) Release 6 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.ElementScanner6(R) Release 6 is obsolete; update to a visitor for a newer release level.javafx.event.EventType() Do not use this constructor, as only one such EventType can existjava.lang.Float(double) It is rarely appropriate to use this constructor. Instead, use the static factory methodFloat.valueOf(float)
method as follows:Float.valueOf((float)value)
.java.lang.Float(float) It is rarely appropriate to use this constructor. The static factoryFloat.valueOf(float)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Float(String) It is rarely appropriate to use this constructor. UseFloat.parseFloat(String)
to convert a string to afloat
primitive, or useFloat.valueOf(String)
to convert a string to aFloat
object.javafx.scene.input.GestureEvent(Object, EventTarget, EventType<? extends GestureEvent>) Do not use this constructor. Constructs empty event.javafx.scene.input.GestureEvent(EventType<? extends GestureEvent>) Do not use this constructor. Constructs empty event.java.lang.Integer(int) It is rarely appropriate to use this constructor. The static factoryInteger.valueOf(int)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Integer(String) It is rarely appropriate to use this constructor. UseInteger.parseInt(String)
to convert a string to aint
primitive, or useInteger.valueOf(String)
to convert a string to anInteger
object.java.awt.event.KeyEvent(Component, int, long, int, int) as of JDK1.1; useKeyEvent(Component, int, long, int, int, char)
insteadjava.lang.Long(long) It is rarely appropriate to use this constructor. The static factoryLong.valueOf(long)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Long(String) It is rarely appropriate to use this constructor. UseLong.parseLong(String)
to convert a string to along
primitive, or useLong.valueOf(String)
to convert a string to aLong
object.java.rmi.server.Operation(String) no replacementjava.security.Provider(String, double, String) useProvider(String, String, String)
instead.java.rmi.RMISecurityException(String) no replacementjava.rmi.RMISecurityException(String, String) no replacementjava.rmi.ServerRuntimeException(String, Exception) no replacementjava.lang.Short(short) It is rarely appropriate to use this constructor. The static factoryShort.valueOf(short)
is generally a better choice, as it is likely to yield significantly better space and time performance.java.lang.Short(String) It is rarely appropriate to use this constructor. UseShort.parseShort(String)
to convert a string to ashort
primitive, or useShort.valueOf(String)
to convert a string to aShort
object.javax.lang.model.util.SimpleAnnotationValueVisitor6() Release 6 is obsolete; update to a visitor for a newer release level.javax.lang.model.util.SimpleAnnotationValueVisitor6(R) Release 6 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.SimpleElementVisitor6(R) Release 6 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.SimpleTypeVisitor6(R) Release 6 is obsolete; update to a visitor for a newer release level.java.rmi.server.SkeletonMismatchException(String) no replacementjava.net.Socket(String, int, boolean) Use DatagramSocket instead for UDP transport.java.net.Socket(InetAddress, 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 theString
constructors that take aCharset
, 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 theString
constructors that take aCharset
, 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. UseTCKind.from_int(int)
instead.java.sql.Time(int, int, int) Use the constructor that takes a milliseconds value in place of this constructorjava.sql.Timestamp(int, int, int, int, int, int, int) instead use the constructorTimestamp(long millis)
javax.lang.model.util.TypeKindVisitor6() Release 6 is obsolete; update to a visitor for a newer release level.javax.lang.model.util.TypeKindVisitor6(R) Release 6 is obsolete; update to a visitor for a newer release level.
-
Deprecated Enum Constants Enum Constant Description com.sun.security.jgss.InquireType.KRB5_GET_SESSION_KEY as of 9, replaced byInquireType.KRB5_GET_SESSION_KEY_EX
which returns an instance ofEncryptionKey
that implements theSecretKey
interface and has similar methods withKerberosKey
.
-
Deprecated Annotation Type Elements Annotation Type Element Description javax.jws.HandlerChain.name()