7.2. Three Distinguishing Features of an OOPL

We now defined all three of the features required to make a language truly object-oriented:

  • (Programmer creation of) User-defined types

  • Inheritance

  • Polymorphism

By way of review, here is a summary of the benefits of each of these language features.

Programmer creation of user-defined types

  • Provides an intuitive way to represent real-world objects, resulting in easier-to-verify requirements.

  • Classes are convenient units of reusable code, which means less code to write when building an application.

  • Through encapsulation, we minimize data redundancy—each item of data is stored once, in the object to which it belongs—and therefore lessen the chance of data integrity errors.

  • Through information hiding, we ...

Get Beginning C# 2008 Objects: From Concept to Code now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.