Lecture Notes for Concurrent Programming

25 July 2002 - Programming Patterns


Programming Patterns


The Before and After Patterns


Hack the Code


Layering


Adapters


Subclassing


Templates


Method Adapters


Assertions


An Assertion Example

$ cat a.java
class a {
  public static void main(String[] args) {
    try { assert false : "Oopsie, an assertion failed!"; } 
    catch (AssertionError ae) {
      System.out.println("Caught an assertion failure: " 
                         + ae.getMessage());
      }
    }
  }

$ javac a.java
a.java:3: warning: as of release 1.4, assert is a keyword, 
and may not be used as an identifier 
    try { assert false : "Oopsie, an assertion failed!"; } 
          ^
a.java:3: not a statement
    try { assert false : "Oopsie, an assertion failed!"; } 
          ^
a.java:3: ';' expected
    try { assert false : "Oopsie, an assertion failed!"; } 
                 ^
2 errors
1 warning

$ javac -source 1.4 a.java

$ java a

$ java -ea a
Caught an assertion failure: Oopsie, an assertion failed!

$ 


try-catch-finally


Points to Remember


This page last modified on 22 July 2002.