iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Java异常区分和处理的一些经验分享
  • 211
分享到

Java异常区分和处理的一些经验分享

java异常处理ava 2023-05-30 21:05:02 211人浏览 安东尼
摘要

异常处理的一些经验总结这篇文章主要是对Java异常选择和使用中的一些误区的总结和归纳,希望各位读者能够熟练掌握异常处理的一些注意点和原则。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。废话少说

异常处理的一些经验总结

这篇文章主要是对Java异常选择和使用中的一些误区的总结和归纳,希望各位读者能够熟练掌握异常处理的一些注意点和原则。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。废话少说,直接看:

误区一、异常的选择

Java异常区分和处理的一些经验分享

这张图描述了异常的结构,其实我们都知道异常分检测异常和非检测异常,但是在实际中又混淆了这两种异常的应用。由于非检测异常使用方便,很多开发人员就认为检测异常没什么用处。其实异常的应用情景可以概括为以下:

调用代码不能继续执行,需要立即终止。出现这种情况的可能性太多太多,例如服务器连接不上、参数不正确等。这些时候都适用非检测异常,不需要调用代码的显式捕捉和处理,而且代码简洁明了。

调用代码需要进一步处理和恢复。假如将 sqlException 定义为非检测异常,这样操作数据时开发人员理所当然的认为 SQLException 不需要调用代码的显式捕捉和处理,进而会导致严重的 Connection 不关闭、Transaction 不回滚、DB 中出现脏数据等情况,正因为 SQLException 定义为检测异常,才会驱使开发人员去显式捕捉,并且在代码产生异常后清理资源。当然清理资源后,可以继续抛出非检测异常,阻止程序的执行。根据观察和理解,检测异常大多可以应用于工具类中。

误区二、将异常直接显示在页面或客户端。

将异常直接打印在客户端的例子屡见不鲜,以 jsP 为例,一旦代码运行出现异常,默认情况下容器将异常堆栈信息直接打印在页面上。其实从客户角度来说,任何异常都没有实际意义,绝大多数的客户也根本看不懂异常信息,软件开发也要尽量避免将异常直接呈现给用户。

package com.ibm.dw.sample.exception;public class RuntimeException extends java.lang.RuntimeException {    //默认错误代码   public static final Integer GENERIC = 1000000;   //错误代码  private Integer errorCode;    public RuntimeException(Integer errorCode, Throwable cause) {      this(errorCode, null, cause);   }   public RuntimeException(String message, Throwable cause) {      //利用通用错误代码      this(GENERIC, message, cause);   }   public RuntimeException(Integer errorCode, String message, Throwable cause) {      super(message, cause);      this.errorCode = errorCode;   }   public Integer getErrorCode() {      return errorCode;   } }

--结束END--

本文标题: Java异常区分和处理的一些经验分享

本文链接: https://www.lsjlt.com/news/221341.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java异常区分和处理的一些经验分享
    异常处理的一些经验总结这篇文章主要是对Java异常选择和使用中的一些误区的总结和归纳,希望各位读者能够熟练掌握异常处理的一些注意点和原则。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。废话少说...
    99+
    2023-05-30
    java 异常处理 ava
  • C#开发经验分享:优雅处理异常与错误
    异常和错误是我们在软件开发过程中经常遇到的问题。不恰当或不正确地处理异常和错误可能导致程序崩溃、数据丢失或系统故障。在C#开发中,优雅地处理异常和错误是非常重要的。本文将分享一些C#开发经验,教你如何优雅地处理异常和错误。1.了解异常和错误...
    99+
    2023-11-22
    错误处理 优雅处理 C#开发关键词:异常处理
  • 分布式系统中Java异步编程的实践经验分享?
    分布式系统中Java异步编程的实践经验分享 在分布式系统中,异步编程是一种非常重要的编程方式。Java语言作为一门非常流行的编程语言,也提供了非常强大的异步编程支持。本文将分享一些Java异步编程的实践经验,帮助读者更好地理解和使用异步编程...
    99+
    2023-10-15
    分布式 linux 异步编程
  • 分享一些Java的常用工具
    目录1:生成纯数字的随机数2:生成包含字母的随机数(大小写)3:正则表达式验证手机号(2021年期间的手机号)1:生成纯数字的随机数 package com.lucun.stud...
    99+
    2024-04-02
  • 有没有人能分享一下Java异步编程API打包的经验?
    Java异步编程在现代应用程序中扮演着非常重要的角色,它能够提升应用程序的性能和可伸缩性。为了更好地利用异步编程,Java提供了一些API,这些API使得异步编程变得更加容易。本文将探讨Java异步编程API打包的经验,并提供一些演示代码。...
    99+
    2023-08-28
    异步编程 api 打包
  • 实战经验分享:Golang请求处理策略
    Golang是一种流行的高性能编程语言,广泛应用于Web开发、云计算、大数据等领域。在实际应用中,如何高效处理请求并保障系统稳定运行是开发人员经常面临的挑战。本文将分享一些关于Gola...
    99+
    2024-02-28
    策略 golang 请求处理 并发请求 同步机制 标准库
  • 分享一些Web前端找实战经验的方法
    Web前端是一个非常热门的行业,近年来不断发展壮大。然而,对于正在学习Web前端的人来说,拥有实际的项目经验是非常重要的。因此,接下来我们将分享一些Web前端找实战经验的方法,帮助初学者更好地进行实践。1.贡献开源项目开源项目是一个非常好的...
    99+
    2023-05-14
  • C++开发经验分享:C++区块链编程的实践经验
    C++开发经验分享:C++区块链编程的实践经验引言区块链技术作为一种新的分布式账本技术,已经在金融、医疗、供应链等多个领域掀起了革命。C++作为一种高性能的编程语言,在区块链开发中扮演着重要的角色。本文将分享我在C++区块链编程方面的一些实...
    99+
    2023-11-22
    区块链 实践经验 C++开发
  • Java分布式自然语言处理接口的优化与实践经验分享
    在当今互联网时代,自然语言处理(NLP)的应用越来越广泛,而Java作为一种广泛应用的编程语言,在NLP领域也有着广泛的应用。但是,由于NLP需要处理大量的数据和复杂的算法,单个Java程序的处理能力很难满足需求,因此分布式处理成为NLP...
    99+
    2023-10-25
    分布式 自然语言处理 接口
  • SpringBoot全局异常处理方案分享
    目录一 业务场景二 全局系统异常类一)全局系统异常类二) 包装异常返回结果给前端,修改自定义异常三 返回案例一 业务场景 调用接口时需要对属性进行校验,比如属性长度,当属性为邮箱时校...
    99+
    2024-04-02
  • leetcode 经验分享:Python 如何处理 HTTP 重定向?
    LeetCode 经验分享:Python 如何处理 HTTP 重定向? 在进行 Web 开发和网络爬虫时,我们经常会遇到 HTTP 重定向的问题。HTTP 重定向是指当我们请求一个 URL 时,服务器返回的是一个重定向的链接,而不是我们实际...
    99+
    2023-09-25
    面试 leetcode 重定向
  • Java异常处理的误区有哪些
    这篇文章主要介绍“Java异常处理的误区有哪些”,在日常操作中,相信很多人在Java异常处理的误区有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java异常处理的误区有哪些”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-17
  • Golang在DevOps中的实践和经验分享
    golang 在 devops 中的运用涵盖三个主要方面:持续集成/持续交付(ci/cd):使用 golang 编写管道以实现自动化构建、测试和部署。监控和告警:创建监视和告警系统,用 ...
    99+
    2024-05-12
    devops golang git docker
  • 面试必备:PHP打包和并发处理的实战经验分享。
    在现今互联网行业中,PHP语言的使用越来越广泛,尤其在Web开发领域中,PHP几乎是必备的一门语言。在PHP开发中,打包和并发处理是两个非常重要的技能,本文将分享一些实战经验,以帮助读者更好地掌握这两个技能。 一、PHP打包技巧 PHP打...
    99+
    2023-07-27
    打包 并发 面试
  • 分享如何处理matplotlib中文字符乱码的技巧和经验
    解决matplotlib中文乱码的技巧与经验分享 【导言】在使用matplotlib绘制图形时,我们难免会遇到中文乱码的问题。这一问题通常出现在图例、坐标轴标签等地方。为了解决这个问题,本文将分享一些实用的技巧和经验,以帮助读者...
    99+
    2024-01-13
    中文编码 字体设置 字体路径
  • Java中异常处理的示例分析
    这篇文章主要介绍Java中异常处理的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!异常的定义在java中,异常就是java在编译、运行或运行过程中出现的错误总共有三种:1.编译错误 2.运行错误 3.逻辑错误...
    99+
    2023-06-25
  • java中异常处理怎么分类
    小编给大家分享一下java中异常处理怎么分类,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java有哪些集合类Java中的集合主要分为四类:1、List列表:有序...
    99+
    2023-06-14
  • C++开发经验分享:C++物理仿真编程的实践经验
    C++开发经验分享:C++物理仿真编程的实践经验摘要:C++是一种强大的编程语言,尤其在物理仿真领域有着广泛的应用。本文将分享一些C++物理仿真编程的实践经验,包括使用C++编写物理引擎、优化算法和处理碰撞等方面的经验,以及一些建议和注意事...
    99+
    2023-11-22
    C++ 实践经验 物理仿真
  • 【整理分享】一些常用的 GitLab 命令
    GitLab 命令是在 Git 中使用的,它是一个基于 Git 代码管理系统的 Web 应用程序,提供源代码管理、项目协作、持续集成和部署等功能。它是一个功能强大的工具,可以用来管理大型团队的代码库。GitLab 的使用方法很简单,可以通过...
    99+
    2023-10-22
  • Java中异常处理误区有哪些
    这篇文章将为大家详细讲解有关Java中异常处理误区有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。误区一、异常的选择图 1. 异常分类图 1 描述了异常的结构,其实我们都知道异常分检测异常和非检测异常...
    99+
    2023-05-30
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作