当前位置:网站首页>Exception handling of classes in C #
Exception handling of classes in C #
2022-07-01 09:13:00 【Andy ahui】
Welcome to be my reader , I hope this article can give you some help .
Preface
During the daily coding process , The most important skill is not that you learn to use many of the latest programming techniques or make a tall system . It's when you're writing code , Handling of exceptions , Whether the system can be stable , robust .
For exception handling in C# China is through try/cath Mechanism to capture , Let's take a look at .
An exception is a runtime error in a program , It violates system constraints or application constraints , Or something unexpected in normal operation .
For example, abnormal assignment of some variables or errors during operation .
abnormal
About anomalies , stay C# Pass through try Statement and exception handling mechanism class ensure exception capture , Prevent the whole program from being reminded of exceptions due to the non capture of exceptions , Even collapse .
Unusual requirements
- try Blocks contain code that is protected from exceptions
- catch The clause section contains one or more catch Clause .( The exception handling code segment is also called exception handling subroutine )
- finally Blocks contain code to be executed in all cases , Whether there is any abnormality or not
class Program
{
static void Main(string[] args)
{
try
{
// Verify whether there is abnormal code
Ahui hui = new Ahui();
InfoBase info = (InfoBase)hui;
Console.WriteLine(hui.GetInfo());
Console.WriteLine(info.GetInfo());
}
catch (Exception ex)
{
// Capture exception , Handle exceptions
throw new Exception(" An exception is thrown up one level !");
}
Console.ReadKey();
}
}
When processing business code , Logical errors must be considered clearly at the beginning for verification , For example, judge empty , Abnormal value , Wrong value type, etc .
Secondly, through try/catch Mechanism to catch abnormal exceptions , Prevent the program from making uncontrollable errors , Leading to a rout .
Tips : Use exceptions as little as possible to catch in business programs , If the conditions are met, the exception should be handled in advance as soon as possible .<Catch() The exception handling time in will be relatively long , And it will lead to the waste of system resources ( Exceptions are thrown up in real time ).>
stay C# There are many different types of exceptions that can occur in ,BCL Many classes are defined , Each class represents a specified exception type . When an exception occurs ,CLR First create an exception object of this type , Second, find the right catch Clause to handle it .( All exception classes are derived from System.Exception class )
About catch() There are three forms , Can handle different levels of exceptions .
The first one is General exception handling
try
{
}
catch
{
// General exception handling
}
Can accept any exception , But we can't confirm the type of exception . The possible exceptions can be handled and cleaned up .
The second kind Specific exception handling
try
}
catch(Exception)
{
// Specific exception handling
}
Take the name of an exception class as a parameter , An exception that matches the specified class or an exception class derived from it .
The third kind of Specific exception handling with object
try
}
catch(Exception ex)
{
throw new Exception(ex.Message);
}
A variety of exception information about exceptions can be provided , An exception that matches the specified exception or an exception class derived from it . Through the exception instance , You can get the details of the exception .
try
}
catch (Exception ex)
{
// Specific exception handling
throw new Exception(ex.Message);
}
finally {
// The handling mechanism after an exception occurs
}
Here's a special explanation , About finally The code in , Whether the exception is caught or not , It will be executed .
stay finally Code suitable for releasing resources or subsequent processing .
Basic knowledge day has been 29 God , If you want to continue , You can pay attention to , Thank you for your support .
remarks
Life is short , I don't want to pursue what I can't see , I just want to catch what I can see .
Originality is not easy. , Pay attention .
I am a A Hui , Thank you for reading , If it helps you , Please like it 、 forward thank you .
I'm glad to be friends with you .
边栏推荐
猜你喜欢
随机推荐
Youqitong PE toolbox [vip] v3.7.2022.0106 official January 22 Edition
[interview brush 101] linked list
2.3 【kaggle数据集 - dog breed 举例】数据预处理、重写Dataset、DataLoader读取数据
Promise asynchronous programming
Shell脚本-case in 和正则表达式
通过 代码实例 理解 浅复制 与 深复制
2.3 [kaggle dataset - dog feed example] data preprocessing, rewriting dataset, dataloader reading data
Mysql8.0 learning record 17 -create table
OSPF - virtual link details (including configuration commands)
Tree structure -- binary tree 2 non recursive traversal
Principles of Microcomputer - internal and external structure of microprocessor
Win7 pyinstaller reports an error DLL load failed while importing after packaging exe_ Socket: parameter error
Redis——Lettuce连接redis集群
How to manage fixed assets efficiently in one stop?
Record a redis timeout
Shell script case in and regular expressions
Shell script - positional parameters (command line parameters)
Principles of Microcomputer - Introduction
Shell脚本-read命令:读取从键盘输入的数据
【ESP 保姆级教程】疯狂毕设篇 —— 案例:基于阿里云和Arduino的化学环境系统检测,支持钉钉机器人告警