男生做污污的网站,wordpress 首页幻灯片插件,厦门公司网站开发,网站怎么做页面解析跳转java开发常见异常我知道我说过在完成视频之前我不会发帖#xff0c;但这一直困扰着我。 至于视频的更新#xff0c;我有些懒散#xff0c;有些忙碌#xff0c;但是我已经准备好记录第一集#xff0c;这是我第一次有机会#xff0c;而且我不需要太多的编辑。 无论如何但这一直困扰着我。 至于视频的更新我有些懒散有些忙碌但是我已经准备好记录第一集这是我第一次有机会而且我不需要太多的编辑。 无论如何还是今天的话题。 Takipi博客最近发布了两篇有关前10个 最常抛出的异常 已记录的文章。 这10个例外占这些日志中97的例外。 我想按从最常见到最不重要的顺序列出这些例外情况并简要说明这些例外情况。 空指针异常 NumberFormatException IllegalArgumentException RuntimeException IllegalStateException NoSuchMethodException ClassCastException 例外 ParseException InvocationTargetException 空指针异常 NPE排在这个名单上甚至排在榜首这对很多人来说并不奇怪但事实并非如此 这些异常是可以避免的。 有两种相对著名的方法可以避免Java中已经存在的空对象模式和Optional类型 并且如果您切换到具有空安全性的语言例如Kotlin它与Java完全兼容您几乎不需要考虑避免使用NPE。 我们都应该通过采取良好的预防措施除非正常的空值检查是从第三者那里获得的除非正常情况下我不认为正常的空值检查是最佳方法才能努力防止这些异常。有助于预防NPE的语言。 NumberFormatException和ParseException ParseException在列表中排名第9但与NumberFormatException密切相关我发现确实令人不安的是 这两个都位于前10名中其中之一是2。 两者都与将String数据解析为其他内容有关我不禁认为由于这些异常的普遍性开发人员并未充分利用类型系统来发挥自己的优势 “字符串型”编程。 现在这些异常中的很大一部分可能是由于用户输入错误或某种序列化问题引起的但是那里可能也存在太多的“字符串类型”对象。 由错误的用户输入引起的错误可能应该在通过解析器之前进行检查而这恰恰是初始输入验证的一部分。 我的意思可能是我想说的更苛刻。 在许多情况下这些都是很难避免的例外将它们排在前十名也就不足为奇了。 NoSuchMethodException和InvocationTargetException 这两种情况都是在反思中发生的我可能不会多说但我非常不喜欢反思。 几乎总是有另一种方式。 那样的方法可能并不容易但是我相信它总是总会更好因为事情变得更加明确和易于理解并且您会从错误中获得更多的编译器帮助。 肯定有一些避免反射的异常例如使用反射运行所有测试的JUnit但是我敢肯定这些异常中的大多数都是无缘无故抛出的使用常规编程技术可以避免问题。 要查看关于避免像反射这样的“魔术”的真正好话请查看“ 8行代码” 很难进行因为视频只看着扬声器而且他在幻灯片中回跳得还不错所以甚至很难与幻灯片一起跟随。 这也是我选择Java Spark而不是Spring的原因之一。 IllegalArgumentException 我实际上不介意出现这个问题。 这意味着很多人正在检查他们的输入并确保他们不会搞砸一切。 有一些方法可以减少计数例如使用真正强壮的类型例如Object Calisthenics的建议规则3和4但这是一组故意过分热心的规则可以帮助您学习并且遵循它只是将IllegalArgumentException进一步推到一个位置。 RuntimeException和Exception 真 真 那只是无济于事特别是Exception。 我可以理解将异常转换为运行时异常但是仅使用RuntimeException并不是最好的方法。 为此设置一个自定义异常即使它与WrappedException一样通用。 IllegalStateException 同样好的OO设计可以解决此问题但是有时很难提出这些设计。 我会轻松一点的。 ClassCastException 我不知道这件事的感觉。 我担心在泛型可用时有多少可能是由反射或使用原始类型引起的。 在这两种情况下都必须停止。 但是我也知道有很多地方真的很难避免因此我不会对此进行竖琴演奏。 结论… 在该例外列表中令我最担心的是Java代码中普遍存在的NPE和反射问题的数量。 其他许多人都与弱的OO设计有关但是我知道那里有很多新手或经验不足的开发人员或者他们的问题使其很难和/或不值得进行更深入的开发。 我不得不放开那些案件。 请读者如果您从中学习到任何东西请了解一下将来可能通过学习如何解决null问题通过使用null安全语言或使用Optional或Null Object模式可以避免很多头痛。尝试看看您可以从代码中获取多少反射和注释。 翻译自: https://www.javacodegeeks.com/2016/06/common-java-exceptions-says-java-devs.htmljava开发常见异常