Java is what is known as an object oriented programming language (OOP).  Object orientation is a very important part of Java so we need to understand some of the main concepts and ideas.

Encapsulation

The idea of encapsulation is central to Java and object oriented programming.  It is the packaging of data together with procedures or functions.  Encapsulation leads to objects.

Objects

An object is a bundle of data and the procedures (methods) that act on the data.  All objects have properties (state) and behaviour. 

For example, cars can have properties (type, model, colour etc) and behaviour (braking, turning, speeding  etc); dogs can have properties (breed, colour, hair length) and behaviour (running, barking, eating, growling).

Software objects can also have properties and behaviour.  Properties are stored in one or more variables.  Behaviour is implemented with methods.  A method is a function associated with an object.  You can model real world objects using software objects.  For example you might want to represent real world cars in a racing game. 

Everything that the software object knows (properties) and can do (behaviour) is expressed by the variables and the methods within that object. 

Messages

A single object is not very useful.  It usually appears in a program with many other objects.  Software objects interact and communicate with each other by sending messages to each other.  When the driver object wants the car object to brake, it sends a message to the car object.  Software messages tell an object what to do.  In Java sending a message consists of calling one of the object's methods.  Often the object needs more information (eg how hard to brake), so this information is passed as a message parameter.

Classes

In the real world, you often have many objects of the same kind. For example, your car is just one of many cars in the world. Using object-oriented terminology, we say that your car object is an instance of the class of objects known as cars. Cars have some properties (model, four wheels, current gear) and behaviour (change gears, brake) in common. However, each car's state is independent of and can be different from that of other cars.

When building cars, manufacturers take advantage of the fact that cars share characteristics, building many cars from the same template. In object-oriented software, it's also possible to have many objects of the same kind that share characteristics: rectangles, employee records, video clips, and so on. Like the car manufacturers, you can take advantage of the fact that objects of the same kind are similar and you can create a template for those objects. A software template that defines an object is called a class.

The difference between classes and objects often causes some confusion. In the real world, it’s obvious that classes are not themselves the objects they describe: A blueprint of a car is not a car. However, it’s a little more difficult to differentiate classes and objects in software. This is partially because software objects are merely electronic models of real-world objects or abstract concepts in the first place. But it’s also because the term “object” is sometimes used to refer to both classes and instances.

If none of this makes much sense to you, it is worth spending some time working through the tutorial at

http://sepwww.stanford.edu/sep/jon/family/jos/oop/oop1.htm