Abstraction is the basis for good Object-Oriented design that is
modular, reusable, and maintainable.
Interfaces and Abstract classes are two mechanisms in Java that
provide high-level abstractions. An interface or abstract class is
something which is not concrete, something which is incomplete.
For this discussion, what do you think is meant by “Programming
to an interface”? What are some differences between Abstract
Classes and Interfaces? Provide a simple example application with
an interface definition and a class which implements the...