OOP is also sometimes known as data-driven programming. You can actually let objects themselves do the work for you. They contain methods, which are invoked when objects are created, deleted, and whenever you call them. Methods can call methods of other objects. The way data is stored in traditional programming languages is usually hard to grasp for humans and not suited for modeling.
Objects are far more complex data structure than lists.
At the basic level an object is a declaration of coherent data and predicates, which can work on these data. In OOP-terminology these predicates are called methods. A class is a definition of an object. An instance is an actual occurrence of this object. Normally you can define as many instances of a class as you like.