How to C# Re-throwing Exceptions

View: 343    Dowload: 0   Comment: 0   Post by: hanhga   Category: C / C++ / MFC   Fields: Other

0 point/0 review File has been tested

The C# exceptions are always caught by the different types of catch handlers but some times that handled exceptions can be Re-throwing/re-generated manually.

When an exception is re-thrown then it can be caught by another or outer catch clause.

By re-thrown an exception the C# allows to multiple catch handlers to handle the same exception individually

A re-thrown exception cannot be re-caught by a same catch handler

An exception is re-thrown by using a throw keyword without specifying an expression

Example:

using System;
namespace csharpAdvance
{
    class ExceptionExample
    {
        // Int type array.
        int[] Numbers = { 1, 2 };
 
        // void type method declaration.
        public void GenerateException(int number, int devidedBy)
        {
            try
            {
                Console.WriteLine("Division " + number + "/" + devidedBy + " = " + (number / devidedBy));
 
                // for loop loops through each int number and assigns into an array.
                for (int count = 0; count < 4; count++)
                {
                    Numbers[count] = count;
                    Console.WriteLine(Numbers[count]);
                }
            }
 
            // DivideByZeroException is handled by catch.
            catch (DivideByZeroException)
            {
                Console.WriteLine("An exception DivideByZeroException is caught.");
            }
 
            // IndexOutOfRangeException is handled by catch.
            catch (IndexOutOfRangeException)
            {
                Console.WriteLine("An exception IndexOutOfRangeException is caught & re-thrown in a class.");
 
                // The throw keyword is re-throwing this exception.
                throw;
            }
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            // Object cration of ExceptionExample class.
            ExceptionExample exceptionExample = new ExceptionExample();
 
            try
            {
                // GenerateException() method is called inside try block.
                exceptionExample.GenerateException(10, 5);
            }
 
            // A re-thrown exception IndexOutOfRangeException is handled/caught in main method.
            catch (IndexOutOfRangeException)
            {
                Console.WriteLine("A re-thrown exception IndexOutOfRangeException is caught in a main method.");
            }
 
            Console.ReadKey();
        }
    }
    /*  The Output will be:
      
        Division 10/5 = 2
        0
        1
        An exception IndexOutOfRangeException is caught & re-thrown in a class.
        A re-thrown exception IndexOutOfRangeException is caught in a main method.
     */
}

How to C# Re-throwing Exceptions

How to C# Re-throwing Exceptions Posted on 08-09-2016  The C# exceptions are always caught by the different types of catch handlers but some times that handled exceptions can be Re-throwing/re-generated manually. 5/10 343

Comment:

To comment you must be logged in members.

Files with category

 
File suggestion for you
File top downloads
Codetitle.net - library source code to share, download the file to the community
Copyright © 2015. All rights reserved. codetitle.net Develope by Vinagon .Ltd