Override All Methods

The bad code differs from the good code in that some methods are not overridden. All superclass methods that could break a subclass invariant must be overridden. For example, in the following code FileSystemDirectory.T did not override the init from Directory.T. As a result, the following is possible:
EVAL NARROW(NEW(FileSystemDirectory.T), Directory.T).init();


Last changed July 17, 1996
whsieh@cs.washington.edu