Object-Oriented Programming

Andreas Fink, Stefan Voss, and David L. Woodruff

ABSTRACT

The fundamental idea of object-oriented program design is to embody relevant abstractions of the application domain as encapsulated, yet adaptable, classes. Classes categorize objects of the same type with respect to common data structure and behavior. Variability of type can be represented by means of inheritance, where specialized classes are derived from general classes representing commonality. The object-oriented software construction method provides the ability to flexibly produce modularized large-scale programs that are correct and employ reusable components. Prominent practically oriented objectoriented programming languages are C++, Eiffel, Java, and Smalltalk.