Summary

Designing effectively with inheritance and polymorphism requires expertise and insight. A designer has many options at his or her disposal, including concrete base classes, abstract base classes, and interfaces. Knowing when to choose one of these design approaches over the others is possible only when you have achieved a reasonable understanding of the topics presented in Chapters 5 and 6.

A design that involves inheriting from an abstract class or a concrete class has an obvious advantage over a design that involves an interface. That is, you can reuse implementation details from a base class—such as field definitions and method implementations—across many derived classes. An interface definition, by contrast, rules out reuse of these ...

Get Building Applications and Components with Visual Basic .NET 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.