We present a theory of object-orientation on the basis of the re-nement calculus. This theory allows for specifying the behaviour of objects and provides a calculus for the proof of relationships between classes such as reenement. Given two similar, but not identical classes, we present an algorithm to construct a common superclass which is reened by both classes, and an algorithm to construct ...