Java is awesome in that it's really, really consistent in everything. In other words, programs are object definitions and object definitions are programs, so you pretty much need to grasp OOP to understand Java (but once you get into Java, you'll start understanding OOP pretty easily). On the other hand, this can cause headaches too

In short, a
class (object definition) is like a specification. A class defines a type of object, which could represent anything -- car, bank account, lobster, whatever. In essence, you're creating a new type of variable, with its own attributes and functions, which you can create instances of through other programs.