Language Basics Java

// : c09:FinallyWorks.java
// The finally clause is always executed.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. See copyright notice in CopyRight.txt.
class ThreeException extends Exception {
}
public class FinallyWorks {
  static int count = 0;
  public static void main(String[] args) {
    while (true) {
      try {
        // Post-increment is zero first time:
        if (count++ == 0)
          throw new ThreeException();
        System.out.println("No exception");
      } catch (ThreeException e) {
        System.err.println("ThreeException");
      } finally {
        System.err.println("In finally clause");
        if (count == 2)
          break; // out of "while"
      }
    }
  }
} ///:~