< a field trip into the wonderful world of Object Oriented Programming
The purpose of this app is to use the animal kingdom as a metaphor for object oriented programming.
It will include at least 5 animals that inherit and override properties and behaviors from parent
abstract and virtual classes.
Inheritance allows Base classes to send properties and behaviors down to Derived classes.
Abstract allows Base classes to act as a template for Derived classes by providing properties and method
signatures that they
can define as they see fit. Once a Base class has been designated as abstract, it cannot be instantiated.
Polymorphism is the act of changing redefining those methods provided by Base abstract or concrete classes.
Abstract methods have to be defined by concrete classes and are provided by abstract Base classes. Virtual
methods, however, have to be defined in the base class that creates and can live inside of concrete or abstract
classes. As a result, Derived classes can choose whether or not to redefine the methods and properties.
Encapsulation is the concept of limiting how much access a class or method has to another method. Public
classes and methods can be accessed by anything. Private classes and methods can only being accessed by
methods in the same class. Protected relaxes protection just a little bit by allowing only Derived classes
to access the classes and methods.
Interfaces are a wonderful way allow methods and properties to be shared across multiple classes in an
abstract way, even if they do not inherit from another class.
1. Click on green "Clone or download" button.
2. Click on the clipboard.
3. Clone the repository to your projects folder.
4. Open the project in Visual Studio
5. Run the application
- Charles Clemens - Initial work - CClemensJr
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.