subsections:
Inheritance and delegation in Java
Polymorphism in C++
Assertions in C++
Canonical class idioms