Use final to deal with custom Exceptions : Exception Finally « Language Basics « C# / C Sharp






Use final to deal with custom Exceptions

 
using System;
using System.Runtime.Serialization;

class TestDirectoryMissingException : ApplicationException {
    public TestDirectoryMissingException() :
        base() {
    }
    public TestDirectoryMissingException(string msg) :
        base(msg) {
    }
    public TestDirectoryMissingException(SerializationInfo info, StreamingContext cxt) :
        base(info, cxt) {
    }
    public TestDirectoryMissingException(string msg, Exception inner) :
        base(msg, inner) {
    }

}
class MainClass {
    static void DoStuff() {
        if (System.IO.Directory.Exists("c:\\test") == false)
            throw new TestDirectoryMissingException("The test directory does not exist");
    }
    static void Main(string[] args) {
        try { 
            DoStuff();
        } catch (System.IO.DirectoryNotFoundException e1) {
            System.Console.WriteLine(e1.StackTrace);
            System.Console.WriteLine(e1.Source);
            System.Console.WriteLine(e1.TargetSite);
        } catch (System.IO.FileNotFoundException e2) {
        } catch (System.Exception e) {
            System.Console.WriteLine("Ex");
        } finally {
            System.Console.WriteLine("final");
        }
    }
}

 








Related examples in the same category

1.illustrates a try, catch, and finally blockillustrates a try, catch, and finally block
2.Demonstates the possible uses of a finally blockDemonstates the possible uses of a finally block
3.Exception with finallyException with finally
4.Exception handle with finallyException handle with finally
5.Use finallyUse finally
6.Exception Handling Finally