The term OOP is so overused that I won’t try to provide an "official" definition. There are too many of those around in the nook and cranny of the Internet. And for each such "definition" there are thousands of clueless and confused people.

This article will be a story, not a definition per se. By the end, you will, hopefully, have an abstract mental image of OOP in your mind. It will remain abstract and confined to the realm of your mind. My humble attempt is to make the "image" clearer.

Let us start with a stupid question which kids ask their parents too often: "What is this?"

What is this?

That is a tiger.

OK. Then what is this?

That is also a tiger.

OK. One more time! What is this?

For God’s sake, that’s also a tiger.

Q: If I utter the word "tiger" which of the three tigers am I referring to?

A: All three.

Q: How can a single word refer to three different things?

A: Well...Ahem…

"Tiger", in this case, is a class. And those "three different things" are instances of the class "tiger". Those are also called objects.

If you are still confused, repeat the same exercise with these three different things:
Every "common noun" is actually a class. However, in a natural language, classes succeed objects. In a computer program, the order is just the opposite. After being beaten and eaten by some creatures which looked like oversized cats and wore a yellow and black coat, our forefathers might have felt an urgent need to coin a word to denote all such creatures. And thus, most likely, the term "tiger" was formed.

For the sake of completeness, some other nouns of English may be mentioned here. A proper noun is an object. Let’s say the forest department folks have named those three tigers as Rudolf, Thunder and Hulk.

A collective noun is a collection of similar objects. In some programming languages, they are variously called arrays, lists etc. For example, if you are to define a cricket team using Java, you would write something like this: ArrayList ckteam;


Earlier, we learnt that word "tiger" refers to a class of creatures. Then what is this?

That is a symbol, a compound one, to be precise. It comprises five simple symbols: t, I, g, e and r.

What is a symbol?

A symbol is a thing that stands for something else. Usually, a smaller "thing" is used as a symbol to represent a bigger "thing"; often.

At this point, we need to put a hard stop to our deep diving. Else we will enter the infinite world of philosophy, wherein our minor problem is known as the type-token distinction and which has unhinged many a great philosopher. You may look at this link if you are too curious:

But proceed further at your own risk!