Connect with us


A course on the fundamentals of Object Oriented Programming


A course on the fundamentals of Object Oriented Programming

Author : Kingsley Mayor Omenaiko

Object Oriented development is a major advancement for software development. In the simplest terms, designing an object Oriented system consists of identifying what objects the system contains.

Also, the behaviours and responsibilities of those objects, and how the objects interact with each other.

Most importantly, a good object Oriented program is easy to modify. It is resistant to the Introduction of bugs during program modification and maintenance.

Also Read : Ten Lucrative Business opportunities you can venture into with N50,000

Although, it might not be a magic bullet that solves all problems associated with producing Software. It is really better than other methodologies

Object Oriented Language

There are several object Oriented Languages available to choose. Examples include : Smalltalk, Effel, C++, VB.NET, C#, Objective C, OO PASCAL, JAVA, Ada, and even a version of LISP.

Today JAVA is the emerging object Oriented language of choice for many programmers and software projects. Though JAVA is being challenged by the .Net technology.

Also Read: Factors to consider when choosing an institution for your degree Programme

One of the main reason for the emergence of JAVA is the world wide web. And also JAVA’s ability to run web applets directly on any Computer or operating system with a web browser.

Object Oriented Programming paradigm


In OOP, one thinks of problems in form of objects, properties and methods. The best way to get a handle on these items is to consider a real world Object.

Then, show how it may be represented in Object Oriented program. Example:


A class describes how certain types of objects look from a programming point of view. When we define a class we must define the object orientation

Also Read: Exact Steps to follow when writing a contract proposal

Object Orientation ?

This is a technique of modelling a real world system in software based on Objects. Object Orientation is a culmination of years of experience in finding an effective way of developing software.

And it is certainly a dorminantl method to develop major software systems today.

Difference between a class and Objects

A class is a description or definition of Objects that belongs to that class.

An object is a single instance or member of a class that is created and exists while the program is still running

Also Read : Appendicitis and it’s surgical remedy

A class may have just a single Object or any number of member Objects existing at any given time.

All members of a class have similar behavior. Objects and classes are really the heart beat of Object orientation.

Object Oriented Software Systems

OO Software systems consist of Objects of different classes that interact with each other using well defined methods or services specified by the class definitions.

When used properly Object Oriented Software development leads to programs that are robust, and easy to debug, modify and maintain.

Object Oriented System

It is important to understand what an object Oriented system is and what makes it different from other Software systems.

One good way of defining an object Oriented system is to use a list of properties that characterize Object Oriented systems

Also Read: Understanding the parts of speech in English language

A non- Object Oriented system might share some properties such as using abstraction or encapsulation, but will not be built using Objects or classes.

Features of OO Systems

Features of a Object Oriented system include the following :

  • Abstraction with Objects
  • Encapsulated classes
  • Communication via messages ( methods )
  • Object lifetime or Scope
  • Class hierarchies/inheritance
  • Polymorphism
Abstraction with Objects

An abstraction is a mechanism that allows a complex real world situation to be represented using a simplified model.


This is the process of hiding all the internal details of an object orientation. It is what allows each object to be independent.

Also Read : A brief study on weather and climate

The exact Implementation of attributes and of object behavior is hidden from the rest of the world.


This is used to hold State information of an object. An attribute might be as simple as an ON or OFF., Boolean variables, or it might be a complex structure as another object.


This is the activity of an object that is visible to the outside world. It includes information to other Objects.


It is an operation or service performed on an object, defined as part of the declaration of a class. Methods are used to Implement object behaviour. Synonyms for method include Member function, operation and service.


This reflects the current value of all attributes of a given object, and is the result of the behaviour of an object over time.

Communication via messages

In order to accomplish useful tasks, Objects need to interact with other objects. Message can be used to change the state of an object or to request an action by the object.

Object lifetime

All Objects have a lifetime. They are created and initialized as they are needed during program execution.While Objects exists, they maintain their own identity and state.

Class hierarchies

In an OO design, classes of Objects are arranged into hierarchies that model and describe relationships among the classes.

The simplest relationship is an association. Hierarchies can also be used to build the definitions of individual classes.


Polymorphism is the final fundamental characteristics of object Oriented systems. When inheritance is used to extend a generalized class to more specialized class. It will usually include extending some or the behaviours or the generalized class.

It is important that a given instance of an object or polymorphism allows this to happen automatically and seamlessly.

To read more Academic contents, kindly visit our social media platforms:

Continue Reading
You may also like...

More in Tutorial

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,694 other subscribers


To Top
error: Content is protected !!