Abstract Data Type & Java Interface
After reading this chapter and engaging in the embedded activities and reflections, you should be able to:
- Criticize design decisions for a simple type hierarchy in Java made by employing the inheritance mechanism.
- Recognize the usefulness of abstract classes and abstract methods to provide code reuse as well as a common interface among subtypes.
- Identify the syntax of Java Abstract Classes and contrast it with Java Interfaces syntax.
- Contrast the utility of abstract classes and interfaces.
- Catalogue class relationships into is-a and has-a classes and separate is-a relationships into "extends" and "implements" types.
- Distinguish between interfaces and implementations.
- Define what an Abstract Data Type (ADT) is.
- Declare an ADT using a Java interface, with complete Javadoc comments.
- Understand the importance and the use of pre- and post-conditions for documenting a method's operation.
- Write pre- and post-conditions for a given method definition.
Starter code for this chapter
Solution code
Solution code for this chapter.