首页 > 其他分享 >该如何做异常处理

该如何做异常处理

时间:2024-09-05 09:15:27浏览次数:3  
标签:游戏 处理 比如 如何 网络连接 异常 运行

该如何做异常处理
首先要清楚什么是运行时异常和非运行时异常

运行时异常(RuntimeExceptions)

想象你在玩一款游戏,游戏中有各种规则。如果某个玩家违反了这些规则,游戏就会自动中断,提示这个玩家犯了错。这种情况下,游戏会弹出一个错误提示,告诉你哪里做错了,然后让你重新开始或改正错误。

在编程里,“运行时异常”就像是游戏里的这些规则。如果你写的代码违反了某些基本规则,比如访问了一个不存在的位置、尝试把一个字符串当成数字使用等,程序就会在运行时(即当你真正玩游戏的时候)中断,并告诉你哪里出了问题。

特点:

  • 不需要特别设置,只要程序一出错,就会直接报错。
  • 大部分是程序员写代码时不小心造成的错误。
  • 比如:访问数组时超出了它的范围、使用了空的对象等。

非运行时异常(受检异常)

再想象一下,你在玩一个需要联网的游戏。有时候,你的网络连接不上,或者服务器有问题,这时候游戏也会中断,但这是游戏设计之外的事情。为了不让玩家措手不及,游戏会在开始前检查网络连接是否正常,或者在玩家操作之前给出提示。

在编程中,“非运行时异常”就像这种情况。它们通常是因为外部的一些不可控因素导致的,比如读取文件时文件不存在、网络连接失败等。对于这类问题,我们需要提前做好准备,告诉程序如果遇到这种情况该怎么办。

特点:

  • 必须在编写代码时就考虑到如何处理这些异常。
  • 通常不是代码本身的问题,而是外部条件不符合要求。
  • 比如:读取文件时找不到文件、数据库连接失败等。

再说具体的,我目前的单位要求异常处理要在service层
于是我现在的异常处理基本都是

 

Exception e 可以覆盖两种异常,事务的问题也可以粗暴的只加一个@Transactional 就不用过于考虑了
踩得坑:
一些自定义的异常类使用前要看看是什么类型比如已经有了Exception e 再写一个trycatch runtimeException的就画蛇添足了

标签:游戏,处理,比如,如何,网络连接,异常,运行
From: https://www.cnblogs.com/guozy123/p/18397022

相关文章

  • 深入解析如何利用1688 API接口获取详尽商品信息
    在电子商务的蓬勃发展中,数据的重要性日益凸显。对于商家而言,能够实时获取并分析商品数据,是提升市场竞争力的关键。1688作为阿里巴巴集团旗下的知名B2B平台,提供了丰富的API接口,使得商家能够轻松获取商品详情。本文将为您全面解析如何通过1688商品详情API接口获取所需数据。一、168......
  • 图像去噪:基于混合噪声处理的 UNF 滤波器与中值滤波器比较
       在图像处理领域,去噪是一个非常重要的步骤。噪声会严重影响图像的质量,使得图像难以被理解或分析。本文将演示如何使用混合噪声处理技术和两种常见的滤波器(UNF滤波器与中值滤波器)来去除图像中的噪声,并比较它们的性能。1.添加噪声   首先,我们通过impulseNoise......
  • 基于自适应中值滤波器的图像去噪处理
        在图像处理中,噪声是一种常见的干扰因素,其中椒盐噪声(SaltandPepperNoise)是一种典型的噪声类型,表现为图像中的随机黑白点。为了消除这种噪声,我们通常使用滤波器进行去噪处理。而自适应中值滤波器(AdaptiveMedianFilter)是一种非常有效的去噪工具。本文将通过MATLA......
  • 【Google Play】高德地图13.20.0.1451最新国际版(如何鉴别是否官方?)
    高德地图,您的全方位出行助手,让您无论走到哪里都能熟悉一切。无论是寻找美食还是探索旅游景点,高德地图都能为您提供详尽的信息。有了高德地图在手,您可以轻松畅游世界各地,享受无忧无虑的旅行体验。提供包括驾车、公交和步行在内的多种出行方式智能导航服务,中文界面让使用更......
  • 【Python学习笔记】 第2章 Python如何运行程序
    Python解释器简介我们在Python的官网下载并安装Python后,它会生成一些组件,包括解释器和一套支持库。Python的代码必须在解释器中运行。程序运行程序员的视角一个Python程序仅是一个包含Python语句的文本文件。例:创建script0.py文件,并写上:print("Hello,world!")print(2**1......
  • 【AIGC】Whisper语音识别模型概述,应用场景和具体实例及如何本地搭建Whisper语音识别模
    ......
  • 【D3.js in Action 3 精译_021】第三章 数据的处理 + 3.1 理解数据
    当前内容所在位置第一部分D3.js基础知识第一章D3.js简介(已完结)1.1何为D3.js?1.2D3生态系统——入门须知1.3数据可视化最佳实践(上)1.3数据可视化最佳实践(下)1.4本章小结第二章DOM的操作方法(已完结)2.1第一个D3可视化图表2.2环境准备2.3......
  • Python基础知识-8(PyQt GUI开发,输出乱码处理)
    (目录)介绍一个VSCode轻量级RestAPI客户端插件:ThunderClient一、关于shebang明确指定解释器#!/usr/bin/python3在shell中寻找第一个python解释器#!/usr/bin/envpython3二、Python类的私有方法/属性Python不支持私有方法/属性,但可以将类成员方法/属性名定义为......
  • 深度学习|模型推理:端到端任务处理
    文章目录引言端到端的能力任务与模型简介手写数字识别数据准备训练集与测试集模型介绍推理过程前向传播权重参数推理与评估结语引言通过前文「深度学习|感知机:神经网络之始」中XORGate的示例,我们知道叠加层可以增强感知机的表达能力。神奇的是,实际上通过简单的......
  • pandas数据处理库使用
    1、pandas简介Pandas(PanelData的缩写)是一个开源的Python数据处理库,它提供了高性能、易用的数据结构和数据分析工具,用于处理和分析结构化数据。Pandas的核心数据结构是DataFrame和Series,它们使数据的清理、转换、分析和可视化变得非常便捷。2、Series使用2.1、Series是一种类似一......