Getting back to Aneng's original question, in Object Oriented Programming, a class is used to model something you're interested in. Nick used a dog as an example and then said that Fido is an instance of the dog class. The way I teach it is to think of class as a blueprint for whatever it is you're interested in. For example, consider a class named Cookie. Inside the class definition you have one or more properties that define the class. In the Cookie class, they might be angles used to define the "bends" in a sharp-edge metal. Define the values a certain way, and you get a Christmas tree cookie cutter. Define them a different way, you get a Star cookie cutter...and so on. So, the properties and methods defined within the class are a template that you can hang on the wall and use whenever you wish. Note, however, you have not defined a cookie yet. You've only created a set of blueprints for various types of cookies.
In Nick's example, you might have properties for a dog like weight, hair color, height, tail length, muzzle length, etc. The Dog class might have methods for Walking(), Barking(), Biting(), etc...things or actions the dog can do. Again, the Dog class is a template for "creating" a dog. My cookie class has properties that can be used to "create" a cookie.
If you think of blueprints as a class that defines a house, then using those blueprints creates an instance of a house. In computer terms, an instance of an object is really a chunk of memory that you can use in your program. Until you have an instance of an object, you don't have the object in usable form. Buying a set of house blueprints doesn't get you a house. If I define the Cookie class properties in a certain way, I am capable of creating a specific cookie. However, until I press the cookie cutter I have defined (i.e., the type of cookie as I have defined it in the class properties) into some cookie dough, I don't have a cookie. Getting back to your original question, if I take the defined cookie cutter (i.e., a class object) and press it into the dough (i.e., computer memory), I get a real cookie (i.e., an instance of the object). Only when I have an instance of a class can I use it in my program.
In Java, the statement:
Time myTime;
says I want to create an object of the Time class named myTime. This says I'm grabbing the Time cookie cutter off the wall that holds thousands of different class cookie cutters and I'm labeling it myTIme. However, it's only after I use the statement:
myTime = new Time();
that I take that cookie cutter and carve out a chunk of memory to create an instance of a Time cookie named myTime. IT's the keyword new that calls the class constructor that actually creates an instance of the cookie. (Usually, the two statements are collapsed into one.) Hopefully, this shows you the difference between a class definition and an instance of the class.