java中的修饰词及其含义_Java 9最终将给出“已弃用”一词的含义
我不确定我是否会独自一个人,但是在我看来,对finalize方法的弃用似乎已经给了太多压力。 我不记得对方法弃用这么热衷,因为他们将java.util.Date()构造函数列入了黑名单,并告诉所有人开始改用GregorianCalendar。
一个不只是停止调用不推荐使用的方法
赋予术语“已弃用”的含义
每当过时的Java方法成为新闻时,我总是喜欢用语言来讨神,因为即使过时了方法,底层代码也从未真正从API中删除,因此,懒惰的开发人员只会继续使用它,过时警告该死的。
在最近的一篇题为Deprecation of Object.finalize()的博客文章中,Oracle技术人员负责人Stuart Marks不仅在Java 9中弃用了哪些内容,而且在API中实际上删除了哪些不赞成使用的方法,从而刷新了记录。 以下是他文章的相关摘录:
Java SE 8中不推荐使用以下六个API,它们已从Java SE 9中删除:
- java.util.jar.Pack200.Packer.addPropertyChangeListener
- java.util.jar.Pack200.Unpacker.addPropertyChangeListener
- java.util.logging.LogManager.addPropertyChangeListener
- java.util.jar.Pack200.Packer.removePropertyChangeListener
- java.util.jar.Pack200.Unpacker.removePropertyChangeListener
- java.util.logging.LogManager.removePropertyChangeListener
另外,在Java SE 9中,不推荐使用forRemoval = true弃用大约20种方法和6个模块,这表明我们打算从下一个主要的Java SE版本中删除它们。 一些要删除的类和方法包括:
- java.lang.Compiler
- 线程破坏
- System.runFinalizersOnExit
- Thread.stop(可抛出)
不建议删除的模块如下:
- java.activation
- java.corba
- java.transaction
- java.xml.bind
- java.xml.ws
- java.xml.ws.annotation
所以,是的,我们正在认真考虑删除内容!
不建议使用的值 != 不 建议 使用的含义
所以我想这会让我闭嘴一段时间。 他们正在努力修剪API并摆脱不推荐使用的方法。 我要问的是,它们不会修剪掉不推荐使用的java.util.Date构造函数。 我仍在编写使用它的代码。
您可以在Twitter上关注Stuart Marks: @stuartmarks
您也可以关注Cameron McKenzie: @cameronmckenzie