Provided by: Cornell University
Topic: Enterprise Software
Date Added: Dec 2014
For helping themselves in writing, debugging and maintaining their software, professional OO software developers keep in their minds an image of the subtyping relation between types in their software while they are developing their software. In pre-generics Java, the structure of the subtyping mental image was simple: the graph of the subtyping relation between classes and interfaces (i.e., with multiple-inheritance of interfaces) was a Directed-Acyclic Graph (or DAG), and the graph of the subtyping relation between classes alone (i.e., with single-inheritance only, more accurately called the 'Subclassing' relation) was simply a tree.