Lecture overview -- Keyboard shortcut: 'u'  Previous page: What is normal? What is exceptional? -- Keyboard shortcut: 'p'  Next page: When are errors detected? -- Keyboard shortcut: 'n'  Lecture notes - all slides together  Annotated slide -- Keyboard shortcut: 't'  Alphabetic index  Help page about these notes  Course home    Exception Handling - slide 5 : 30

Examples of normal and exceptional aspects
Normal aspects and exceptional aspects - anticipated or non-anticipated
  public static long Factorial(int n){
    if (n == 0)
      return 1;
    else return n * Factorial(n - 1);
1.   Negative input

2.   Wrong type of input

3.   Wrong type of multiplication

4.   Numeric overflow

5.   Out of memory

6.   Loss of power

7.   Machine failure

8.   Sun failure

An iterative Factorial function.
An iterative Factorial function with a precondition - not C# 3.0.