try/catch 块中的完整代码

2024-05-01

我想知道,这是一个good practice放置complete code里面一个try block或者我应该放置only the code which I feel it will cause a specific exception?
我应该总是捕获基本异常吗

Code 1:try块中的完整代码

myFunction(){
 try{
   .........
   Code with chance of OneException 
   .............
 }catch(OneException e){
  ............
 }catch(Exception e){
   ..............
 }
}

Code 2:仅在 try 块中可能出现异常的代码

myFunction(){
  .......
  try{
   Code with chance of OneException 
  }catch(OneException e){
  ............
  }
  ............
}

Code 3:我应该总是捕获异常吗

    myFunction(){
      .......
      try{
       Code chance of OneException 
      }catch(OneException e){
      ............
      }catch(Exception e){
       ..............
      }
      ........
   } 

其中(code1、code2 和 code3)哪一个最好?
我主要关注java和C++编码


一般来说,你应该只捕获您感兴趣并且可以处理的异常。那就是......捕获一个异常,你可以在其中做一些事情。用户没有意识到问题或者明确需要告诉用户问题时。
对于所有其他异常,让它们弹出并显示您明显记录的所有详细信息(堆栈跟踪等..)。请注意,显然这并不意味着用户也应该看到该异常输出,而是一个通用错误。

说到这里,我假设当您编写“OneException 的代码机会”时,您知道如何处理 OneException,但不知道如何处理 Exception,对吗?那么...只处理 OneException。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

try/catch 块中的完整代码 的相关文章

随机推荐

  • OpenLayers 3 中的边界如何工作?

    是否有这样的概念OpenLayers Bounds http dev openlayers org docs files OpenLayers BaseTypes Bounds js htmlOpenLayers 2 x 中的内容仍然存在于
  • 如何确定 WPF 中的光标大小?

    在 Windows 窗体中 有一个 Cursor Size 属性 允许您获取光标对象的大小 宽度 高度 如何在 WPF 中确定此信息 SystemParameters 类公开光标宽度 http msdn microsoft com en u
  • 在 MATLAB 中高效地形成动态窗口

    有人可以帮助我提供一种有效的方法 或者帮助我执行提供的代码 以尽可能少的步骤获得相同的结果 我将感激你 我有一个原始数组 A 1 1 1 4 3 4 5 4 4 3 3 1 0 0 2 6 2 6 3 6 6 2 7 4 8 7 2 2 2
  • 如何将急切执行中的模型转换为静态图并保存在 .pb 文件中?

    想象一下我有模型 tf keras Model class ContextExtractor tf keras Model def init self super init self model self get model def cal
  • 按名称查找控件的父级

    当在 xaml 代码中设置名称时 有没有办法通过名称找到 WPF 控件的父级 尝试这个 element VisualTreeHelper GetParent element as UIElement 在哪里 元素是 Children 您需要
  • 如何在Java程序中调用DLL中的方法

    我正在尝试使用 JNA 调用 DLL 中的方法 到目前为止已经使用加载了DLL Runtime getRuntime load myworkspace test dll 该 dll 包含我需要访问的方法 如何在我的 Java 文件中执行 D
  • MVC T4 MvcTextTemplateHost 和定制的“控制器”T4 模板

    我正在创建自己的自定义 T4 模板 该模板与我的 MVC Web 应用程序中包含的 ADO NET 实体框架模型 edmx 文件 集成 以供参考 请简单浏览一下以下两个网址 斯科特 汉塞尔曼 T4 代码生成 Visual Studio 最保
  • 为什么我的代码中总是大写?

  • 如何以编程方式锁定 Windows 工作站? [复制]

    这个问题在这里已经有答案了 可能的重复 使用 C 以编程方式锁定 Windows 工作站 https stackoverflow com questions 1263047 lock windows workstation programm
  • 将 Magick::Image 转换为 cv::Mat

    我正在尝试将通过 Magick 从 GIF 加载的图像转换为cv Mat 我已经从cv Mat to Magick Image但似乎无法找到如何从 Magick 中的图像中提取数据以便将其加载到 Mat 中 最好的方法是什么 供参考 反过来
  • 确定 WPF 元素相对于某个父元素的边界矩形

    我认为这是一个非常简单的请求 但我似乎无法在搜索中找到确凿的答案 如何确定窗口中特定视觉元素相对于其他父元素的边界 我尝试过使用LayoutInformation GetLayoutSlot但这似乎只是返回一个Rect在 0 0 处并且不反
  • 如何在python日志模块中获取当前日志级别

    我正在尝试创建一个基本记录器 无需外部包即可着色 these have to be the first functions so I can use it in the logger settings def create log name
  • 为什么 Jupyter 突然将数据框显示为基于文本的?

    我已经使用 jupyter 笔记本有一段时间了 如果我这样做的话df head 它总是返回一个格式良好的表格格式 现在我调用了数据 我得到了这个 为什么 我该如何解决它 import pandas as pd df pd read csv
  • 如何循环用户输入直到输入整数?

    我想运行一个交互式程序 提示用户输入学生人数 如果用户输入除整数之外的字母或其他字符 则应再次询问他们 输入学生人数 我有以下代码 public int createArrays Scanner s int size System out
  • Neo4j 的 Cypher 查询语言是开源的吗?

    Neo4j的语言Cypher的现状如何 我真的很喜欢它 但我想避免 Neo4j 锁定 是否还有像 Gremlin 中那样的其他 Cypher 界面 Regards Cypher 完全是 OSS 请参阅https github com neo
  • 如何使用 Perl 从纯文本中提取 URL?

    我需要 Perl 正则表达式来解析纯文本输入并将所有链接转换为有效的 HTML HREF 链接 我已经尝试了在网上找到的 10 个不同版本 但没有一个可以正常工作 我还测试了 StackOverflow 上发布的其他解决方案 但似乎都不起作
  • 带有 dplyr::do 的匿名函数 - 使用 rle 的结果来过滤数据

    我有按主题 id 分组的时间序列数据 这些数据保留在某个 站点 上 并且在每个 时间 步骤中都有某个 阶段 有时受试者从一个站点切换到另一个站点 并且可能会再次返回 如果个人更换站点来回 例如 从站点 a 到站点 b 然后返回站点 a an
  • 比较两个序列是否相等

    在因其标题而将其标记为重复之前 请考虑以下简短程序 static void Main var expected new List
  • Google 文档自动保存如何工作?

    好吧 我知道这听起来很普通 但我指的是 AJAX 级别 我尝试过使用 Firebug 来跟踪 NET 连接和帖子 但这是一个谜 有谁知道他们如何在不破坏网络 浏览器的情况下不断进行即时自动保存 我的猜测 这只是一个猜测 是谷歌使用推送服务
  • try/catch 块中的完整代码

    我想知道 这是一个good practice放置complete code里面一个try block或者我应该放置only the code which I feel it will cause a specific exception 我