本文目录一览:
- 1、java过时的方法一定不可以用吗?
- 2、Java的过时方法?
- 3、Java调用过时的方法会怎么样?
- 4、java中resume() stop()方法已经过时用什么方法代替呢
- 5、Java中某个方法已过时,不推荐,但是想使用怎么办呢?
- 6、java已过时方法是怎么回事
java过时的方法一定不可以用吗?
不是一定不能用,可以用的,只是建议不要使用,因为过时的方法在后期从低版本JVM升级成高版本JVM时,将可能不会被支持
Java的过时方法?
比如说你的Java名叫Test,如果用javac Test.java出现API,则你用javac -Xlint Test.java重新编译,则会指出过时的方法!
Java调用过时的方法会怎么样?
被标记为过时的方法,在当前版本中还可以使用,不过会在将来某个版本中被完全废弃掉(塞完全不能用)。
所以如果有替代方法,尽量不要去用被标记为过时的方法。
java中resume() stop()方法已经过时用什么方法代替呢
stop
@Deprecated
public final void stop()
已过时。 该方法具有固有的不安全性。用 Thread.stop 来终止线程将释放它已经锁定的所有监视器(作为沿堆栈向上传播的未检查 ThreadDeath 异常的一个自然后果)。如果以前受这些监视器保护的任何对象都处于一种不一致的状态,则损坏的对象将对其他线程可见,这有可能导致任意的行为。stop 的许多使用都应由只修改某些变量以指示目标线程应该停止运行的代码来取代。目标线程应定期检查该变量,并且如果该变量指示它要停止运行,则从其运行方法依次返回。如果目标线程等待很长时间(例如基于一个条件变量),则应使用 interrupt 方法来中断该等待。有关更多信息,请参阅《为何不赞成使用 Thread.stop、Thread.suspend 和 Thread.resume?》。
强迫线程停止执行。
如果安装了安全管理器,则以 this 作为其参数调用 checkAccess 方法。这可能引发 SecurityException(在当前线程中)。
如果该线程不同于当前线程(即当前线程试图终止除它本身以外的某一线程),则安全管理器的 checkPermission 方法(带有 RuntimePermission("stopThread") 参数)也会被调用。这会再次抛出 SecurityException(在当前线程中)。
无论该线程在做些什么,它所代表的线程都被迫异常停止,并抛出一个新创建的 ThreadDeath 对象,作为异常。
停止一个尚未启动的线程是允许的。如果最后启动了该线程,它会立即终止。
应用程序通常不应试图捕获 ThreadDeath,除非它必须执行某些异常的清除操作(注意,抛出 ThreadDeath 将导致 try 语句的 finally 子句在线程正式终止前执行)。如果 catch 子句捕获了一个 ThreadDeath 对象,则重新抛出该对象很重要,因为这样该线程才会真正终止。
对其他未捕获的异常作出反应的顶级错误处理程序不会打印输出消息,或者另外通知应用程序未捕获到的异常是否为 ThreadDeath 的一个实例。
抛出:
SecurityException - 如果当前线程不能修改该线程。
另请参见:
interrupt(), checkAccess(), run(), start(), ThreadDeath, ThreadGroup.uncaughtException(java.lang.Thread, java.lang.Throwable), SecurityManager.checkAccess(Thread), SecurityManager.checkPermission(java.security.Permission)
Java中某个方法已过时,不推荐,但是想使用怎么办呢?
被标记为过时的方法,在当前版本中还可以使用,不过会在将来某个版本中被完全废弃掉(塞完全不能用)。
所以如果有替代方法,尽量不要去用被标记为过时的方法。
java已过时方法是怎么回事
以过时的方法当然可以使用,但是过时的方法一般是存在各种各样的问题,所以提供新的方法来替代。
过时的方法是不建议使用的。