我不明白try and get中错误处理的含义。(C#)在我的在线课程中使用了以下示例:
class Program
{
static void Main(string[] args)
{
try
{
int[] numbers = new int[3];
numbers[1] = 0;
numbers[2] = 1;
numbers[3] = 2;
numbers[4] = 3;
}
catch(IndexOutOfRangeException ex)
{
Console.WriteLine(ex.Message);
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadKey();
}
}
这是一个非常简单的例子,但是我为什么要这么做呢?
我是个新手。。。我正在学习编写C#。。。但我试图通过这种方式学习,在最好的情况下,根本不会发生错误。
我为什么要抓住这样的例外而不是
run the programm -> "Ah there is a exeption" -> and then fix it?
首先是一个小点,在C#array中,0是基于索引的,这意味着你应该从数字[0]开始。
在您的情况下,数字[4]将失败,但如果没有try/catch,代码将立即停止。
大多数情况下,您希望记录应用程序中错误发生的事情,因此这是try/get机制的第一个可能的(并且广泛使用的)目的。
有时,一个操作可能不够重要,无法停止程序。假设您要发送统计信息。如果无法发送统计数据(网络问题?)您不希望程序完全停止。
另一个需要更细粒度捕获的用例是重试机制。如果因为网络问题而崩溃,你可以在几秒钟后重试,但是如果因为IndexOutOfRangeException而崩溃,那么这个问题会一次又一次地发生,所以甚至不需要重试(但你可能会记录它)。
但测试失败..为什么?(因为我的接球盖帽里没有投球)。但我不想扔任何东西,我只想它有能力去接住。那么有没有可能进行测试呢?
问题内容: 作为开发人员,我与E_NOTICE一起工作。不过最近,有人问我为什么应该修复E_NOTICE错误。我能提出的唯一理由是纠正这些问题的最佳实践。 还有其他人有任何理由证明纠正这些问题所花费的额外时间/成本吗? 更具体地说,如果代码已经起作用,为什么经理应该花钱修复这些问题? 问题答案: 摘要 在PHP运行时配置文件给你一些想法,为什么: 在开发过程中启用E_NOTICE有一些好处。 出于
我知道如果我们有这样的try-catch设置: 如果中存在错误,捕获错误将触发。 根据我的理解,如果我们尝试像这样的catch设置: 如果中存在错误,则不会触发捕获错误,因为该函数将在以后运行。 我不明白的是,当我们使用wait时,为什么catch错误不会触发: 如果这次异步函数中出现错误,并且由于javascript引擎正在等待它完成运行,为什么在出现错误时它不能捕获错误呢。 编辑1: 第二个功
我需要将12小时的时间转换为24小时的格式。 我现在已经把12小时的时间硬编码了,以使事情更简单。 我的逻辑:输入sting 07:05:45PM提取最后2个字符。如果AM check为前两个字符,则为12。。如果是,则将其设置为00,否则按原样输出,如果PM检查前两位数字是否为12。。如果是,请保持原样,如果不是,则在前2位加上12 总线错误:10是我运行代码得到的
例如: 将在Kotlin中编译,但在Java中会出现编译器错误。为什么?
如果我为第一个扫描器语句键入字母,我会得到“错误!!”和“输入一个数字”,但不能输入另一个数字。我是一个初学者,不知道输入语句是否可以在catch语句中使用