Object-oriented Programming

Object-oriented programming is a programming practice where software is divided into classes which contain functionality for a set of objects. Classes can extend other classes to inherit the functionality of the extended (parent) class. Classes may also implement interfaces, which define a set of functions (methods) that the class should have and ensure that the implementing class defines those methods. Extending classes and implementing interfaces, otherwise known as inheritance, allows the programmer to access functionality in objects even when they do not know the exact class (type) of the object. As long as the object inherits from a certain interface or class, the functionality defined by that interface or class must be available to it. This allows programmers to use polymorphism, which is where functionality is used on an object without knowing the exact type of the object. The principles of inheritance and polymorphism are incredibly powerful in object-oriented programming because they enable different parts of code to be separated into different classes while still working together. Further, these principles are the basis for most good software design principles, which is why they are heavily used in almost every modern software project.

Web Developer

Company
Brigham Young University
Location
Provo, UT
Start Date