当前位置: 首页 > news >正文

优化方案化学顺德网站优化公司

优化方案化学,顺德网站优化公司,公众号平台有哪些,四川省建设厅网站在线申报java语言一直在进化#xff0c;java类库也越来越庞大#xff0c;给人的感觉是一直在做加法。 有没有做减法呢#xff1f;当然也有#xff0c;一些是设计失误需要撤回的#xff0c;如可能引起线程安全问题的Thread.stop()等方法#xff1b;还有是随着时代发展而被淘汰的java类库也越来越庞大给人的感觉是一直在做加法。 有没有做减法呢当然也有一些是设计失误需要撤回的如可能引起线程安全问题的Thread.stop()等方法还有是随着时代发展而被淘汰的比如曾被寄予厚望的Applet。 java类库中这些废弃的内容有没有地方统一归档方便我们的查找假如我们要升级java版本而找出当前代码中使用了哪些新版本废弃的API就能让准备更加充分。 答案是有的。 java9之后的java API文档贴心地单独为废弃的内容做了一个页面。如java 21版本对应的链接是 Deprecated List (Java SE 21 JDK 21)。 顶上有个过滤功能可以按特定版本来分别过滤该版本废弃了哪些其中的others选项包含了11之前所有版本的废弃内容。 接下来是目录根据类型分为接口、非异常类、异常类、字段、方法、常量、枚举常量这七种。而最上面的终将废弃 Terminally Deprecated和下面的七种并不是并列关系而是将下面七种类型中最终会被删除的部分提取复制出来单独放在这里。 为什么这样做因为废弃的含义分为两种一种是后续版本要删除的即终将废弃如果你的代码使用了这样的API如果后续升级类库你的代码就可能无法通过编译。而另一种是不会删除的API但不建议你使用后续版本也会保留升级类库不会编译失败。作为类库的用户显然更关注第一种所以就单独放了一份。更多可参考 JEP 277: Enhanced Deprecation 接下来就是具体的内容分别是名称、版本号和描述并支持按名称或版本号进行排序。按版本号排序很实用描述的内容也值得参考里面会提供废弃的原因是否有替代品等信息。 简单地浏览一部分 终将废弃并删除的 java.lang.Thread.stop() 等 还有resume、suspend 以及 ThreadGroup类对应的方法。早在1.2就废弃了。 参考 Java Thread Primitive Deprecation (Java SE 21 JDK 21) (oracle.com)https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/doc-files/threadPrimitiveDeprecation.html java.applet.Applet等 java9废弃早就没人用了 java.lang.Boolean(boolean) 等构造函数 还有Byte、Character、Double等基本类型的包装类它们的构造函数都在java 9废弃了。改用静态工厂方法可以参考 Effective Java 的第一条建议。 java.lang.Object.finalize() 一直没存在感的方法终于在java 9 废弃了减少了记忆学习的负担。虽然这里建议改用 Cleaner但 Effective Java 3 第八条告诉我们Cleaner最好也别去碰。 javax.security.cert.Certificate 等 其实是转正了包名从 javax... 换成了 java.security.cert 。可见网络安全的地位从可选变成了必选。java 9 废弃。 java.lang.SecurityManager 及其相关 java 17废弃。这安全也是当年java的一大卖点现在也没落了。 这个的确很少用页面中给出了废弃原因的链接 JEP 411。 主要就是说一是用于客户端代码安全但Servlet早就没人用了二是用于服务端代码安全可实际上基本没什么人用。 java类库越来越大要管的东西太多我们维护起来太累放弃了。 另外2020年CWE的top 25安全漏洞Security Manager有19个都管不了还要它干嘛感觉这个有点强词夺理也没指望人一个机制能解决所有层面上的漏洞 发明了20多年但业界太少人用了除了少量软件如ElasticSearch和Tomcat。 甚至.NET都不支持了java废弃它的理由就更充分啦。 废弃但不删除的 java.util.Observer 接口 和 java.util.Observable 类 java9 废弃理由是功能太局限。 如果要更丰富的事件模型用 java.beans包。如果要可靠有序用 java.util.concurrent 包。如果要用响应式流风格编程用 Flow API。 java.util.Date.getDate() 等方法 从1.1版本起就废弃了。 废弃的有 get/set 年月日时分秒等方法以及转换成字符串的方法。废弃的原因是这些api不支持国际化。所以要获取年月日等信息要用Calendar类而格式化或者日期解析要用 DateFormat类。 Date类本身剩下的非废弃方法就两三个只能用于比大小功能非常有限感觉类似于废弃。构造函数只剩两个一个是无参根据当前时间构造对象另一个是long毫秒数为参数。还有个java 8加入的静态工厂方法根据Instant对象生成Date对象。 java.lang.Class.newInstance() 方法 java 9废弃。这个方法用来调用某个类的无参构造器如果构造器有异常则newInstance方法会原样抛出来。但newInstance方法本身只声明了两个 checked 异常InstantiationException 和 IllegalAccessException。这个和java语言规定的“方法必须声明所有自己可能抛出的checked异常”就矛盾了等于绕过了编译器的校验。 建议改用 Constructor.newInstance  方法它会把构造器的异常包装成 InvocationTargetException 抛出来而且也在方法中声明了。 java.lang.Runtime.exec(String)等方法 java 18废弃。并不是所有exec都废弃了只是废弃了其中几个容易出问题的 java.lang.Thread.getId() java19废弃。因为它不是final可能被覆写。现在加final又太迟了。建议改用 Thread.threadId()。 java.util.Locale的构造器 所有构造器全部在java 19废弃了。替代方式有很多比如 Local.Builder还有两个静态工厂方法或者常量以及匹配/过滤/查找等方法。 java.net.URL的构造器 所有构造器全部在java 20废弃了。改用URI或URL的一些静态工厂方法。
http://www.pierceye.com/news/180835/

相关文章:

  • seo站外优化平台网站建设程序流程
  • 凡科轻站官网做个简单的企业小网站
  • 动漫做h免费网站有哪些系统开发是做什么的
  • 企业做网站流程全国地推公司排名
  • 揭阳新闻最新消息常用的seo工具推荐
  • 网站方案策划中国最大的博客网站
  • 网站建设加空间食品包装设计ppt
  • 搭建一个网站 优帮云张家口远大建设集团网站
  • wordpress本地视频播放器苏州谷歌seo
  • 银川网站建设有哪些16岁做分期网站
  • 制作网站对话框火车票网站建设多少
  • 怎么问客户做不做网站设计一个简单的广告
  • 佛山 网站关键词优化trel域名
  • 哪家网站建设好大连房产网
  • 企业做推广哪些网站比较好兰州有做百度网站的吗
  • 网站建设和管理规则自己建网站的流程
  • 网站的前期推广广州网站建设加盟
  • 网站灰色 代码深圳的深圳的网站建设公司
  • 做电影采集网站需要多大vps安徽建设新工程信息网站
  • 中小企业网站制作化工厂网站建设
  • 电子政务网站建设出版社百度网页提交入口
  • 专业柳州网站建设哪家便宜淄博桓台网站建设定制
  • 网站建设投标标书企业网站建设销售前景
  • wordpress建站教程凌风wordpress 仪表盘 慢
  • 怎样给网站或者商品做推广关于建网站新闻
  • 上海 微信网站 建站一对一直播app
  • ppt模板免费下载网站哪个好克拉玛依市住房和建设局网站
  • 制作网站得多少钱交互设计留学
  • 理财网站免费建设经典重庆新闻论坛
  • 南京专业网站制作哪家好企业所得税交多少