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

郑州公司网站制作中国网站排行榜

郑州公司网站制作,中国网站排行榜,浙江省建设协会网站首页,深圳网站建设犀牛云stringbuffer当我处理旧代码并在StringBuffer实例上运行时#xff0c;通常将它们替换为StringBuilder实例。 尽管可以从此更改中获得性能优势#xff0c;但我经常在我所知不会对性能产生明显影响的地方进行更改。 我认为#xff0c;除了可能带来性能收益外#xff0c;还应出… stringbuffer 当我处理旧代码并在StringBuffer实例上运行时通常将它们替换为StringBuilder实例。 尽管可以从此更改中获得性能优势但我经常在我所知不会对性能产生明显影响的地方进行更改。 我认为除了可能带来性能收益外还应出于各种原因进行更改。 几乎没有理由不选择StringBuilder不是StringBuffer API期望是最常见的例外并且代码中存在StringBuffer误导读者并为Java新手提供了一个不好的例子。 Andy Hunt和David Thomas 在 《 实用编程器从旅居者到大师 》一书中讨论了 “修复代码中的小问题“破窗”的重要性”。 杰夫·阿特伍德Jeff Atwood在“破窗理论”一文中谈到了这个主题最近在“ 软件腐烂熵和破窗理论 ”一文中对此进行了介绍并且不要留下破窗 。 StringBuffer的存在意味着代码中的陈旧性。 实际上使用StringBuffer可能不是一个“破损的窗口”但它是一个真正古老的泄漏的单窗格窗口 应将其替换为现代节能的双窗格窗口 。 我发现了Peter Lawrey的最新博客文章StringBuffer而摆脱遗留代码有多么困难这是对代码中仍然存在的StringBuffer其他含义的有趣理解。 Lawrey引用了StringBuffer类Javadoc文档的最后一段“从JDK 5版本开始该类已经添加了一个等效类供单线程StringBuilder使用。 通常StringBuilder类优先于该类使用因为它支持所有相同的操作但是它更快因为它不执行同步。” 然后Lawrey使用简单的Java方法和jmap来证明StringBuffer实例仍在JDK附带的类和库中使用直到Java 8为止。 Lawrey指出在引入“直接替换” StringBuilder十多年之后 StringBuffer在频繁使用的Java代码中的存在证明了“清理遗留代码”有多么困难。 Lawrey的完整结论指出“在启动时使用StringBuffer并没有多大区别但是考虑到它具有众所周知的替代替换功能并且即使在十多年后的新功能中仍可以使用这表明了它的难易程度。清理遗留代码或改变思路以使人们使用最佳实践库。” 我决定在用Java 8 Update 121进行编译以及在使用最新版本的OpenJDK 9进行编译时尝试使用Lawrey最简单的示例之一。我略将Lawrey的示例调整为下面显示的简单“ Main”类清单。 Main.java import java.io.IOException;/*** (Slightly) adapted class from blog post* StringBuffer, and how hard it is to get rid of legacy code at* https://vanilla-java.github.io/2017/04/13/String-Buffer-and-how-hard-it-is-to-get-rid-of-legacy-code.html*/ public class Main {/*** Main function that instantiates this Java application and does nothing* else until ENTER is pressed.*/public static void main(final String[] args) throws IOException{System.out.println(Waiting [press ENTER to exit] ..);System.in.read();} } 以下屏幕快照显示了使用jcmd及其-all选项检查中包括无法访问的对象的输出以显示在简单Java应用程序中编译并针对三种不同版本的Java Java运行StringBuffer和StringBuilder的实例数8更新102 Java 8更新121和OpenJDK 9.0 ea 164 。 jcmd的执行在PowerShell中执行因此Select-String的用法与Linux中grep的用法类似。 尽管使用Java 8版本编译和执行的类的版本具有StringBuffer实例但是使用Java 9编译并针对Java 9执行的版本仅具有StringBuilder实例。 看起来JDK-8041679 “在核心库类中用StringBuilder替换StringBuffer的使用”和JDK-8043342 “在密码子中用StringBuilder替换StringBuffer的使用” 的解析已达到预期的效果。 翻译自: https://www.javacodegeeks.com/2017/04/implications-presence-stringbuffer.htmlstringbuffer
http://www.pierceye.com/news/111064/

相关文章:

  • 怎么做可以访问网站连接加密东莞++网站建设
  • 企业网站的建设与流程数据分析师要学什么课程
  • 重庆营销型网站随做的好谷歌广告投放教程
  • 个人公众号做网站广州市车管所网站建设
  • 上海网站建设公司排名王也诸葛青cp
  • 常用的设计网站有哪些wordpress如何汉化主题
  • 深圳全网营销型网站免费做调查的网站有哪些
  • 设计素材网站知乎济南seo网站推广
  • 网站建设类岗位杭州国家电网 两学一做 网站
  • html静态网站开发自我介绍网站手机客户端开发教程
  • 营销型网站是什么样的桂林北站有核酸检测点吗
  • 网站未备案被阻断怎么做it培训机构哪个好一点
  • 重庆建设注册执业中心网站网络营销百度百科
  • app网站怎么下载个人备案做视频网站
  • 西宁建一个网站公司广东网站备案
  • 网站数据比较北京网站优化推广公司
  • 想做网站的客户在哪找美间在线设计平台
  • 网站设计规划的目的和要求营销外贸网站建设案例
  • 网站营销力一级a做爰片2017免费网站
  • 昌图网站网页界面设计的要求
  • 做一个网站赚钱什么 门户网站
  • 中国建设银行购物网站帝国织梦wordpress
  • 瑞安网站网站建设松原公司做网站的流程
  • 做网站按页面收费视频解析网站如何做搜索
  • 太原网站的公司赣州安全教育平台
  • 淮北建投网站网站推广与维护有什么不同
  • 深圳网站备案注销平果县免费网站哪家好
  • 如何区分网站开发语言做网站多少钱一般
  • 定制专业app开发seo数据统计分析工具有哪些
  • 某服装公司网站建设论文网站建设seo虾哥网络