What is OOP?
OOP stands for Object Oriented Programming. OOP is a programming paradigm wherein you create "objects" to work with. These objects can then be tailored to your specific needs, to serve different types of applications while maintaining the same code base. Quite useful indeed.
What is an object?
An object is simply a copy or instance of a "class". A class can be defined as a "black box" from where we create our objects and access its attributes (variables) and methods (functions). The most common analogy given when explaining classes and OOP is how you drive a car: basically, you have 2 or 3 pedals, a gear stick and a steering wheel. You don't need (and most probably don't want) to know how the car works when you press the pedals. You just want your car to go back and forth, left and right. And OOP is precisely that. You don't need to know how the methods of a class work (if you didn't implement it yourself), just what they do. OOP is also useful if you have a large number of objects of the same type in a system: you just have to create the objects and then manipulate them all in the same way, without rewriting any code. Moreover, an object is able to maintain it's state (variable values and such) throughout the execution of the program.