This terminology is most useful when the class contains both static and non-static members. So far, I've been talking mostly in generalities, and I haven't given you much idea what you have to put in a program if you want to work with objects. Let's look at a specific example to see how it works. Grades on three tests. The names and tests in different objects will generally have different values.
Different students can have different averages.
In Java, a class is a type , similar to the built-in types such as int and boolean . So, a class name can be used to specify the type of a variable in a declaration statement, the type of a formal parameter, or the return type of a function. A variable can only hold a reference to an object. You should think of objects as floating around independently in the computer's memory. In fact, there is a portion of memory called the heap where objects live.