>>1
the true essence of OOP isn't just about using classes and objects, but using them as the basic building blocks of the entire program.
it's easy enough to throw objects into an otherwise normal non-OO program if the language supports it (C++ is a good example). in these cases, however, objects are little more than glorified structs which do little to enhance the program.
object oriented programming takes it further. rather than a bunch of commands acting on variables, you have a bunch of objects acting with other objects. each class ideally has it's own unique methods and attributes which apply only to that class. this makes OO programs more modular and, theoretically, improves the ability to reuse one class in other programs.
>and is OOP really better than structured programming?
meh, not really 'better' so much as 'different'. you can do the same things in structured programming, and often with less code. however, OO programs (in my experience) tend to be easier to debug and upgrade if done properly. it's mostly a personal preference, and i'd recommend learning both styles of programming regardless.