Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Java Language
Expertise: Beginner
Mar 21, 1997



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Difference Between Instance and Object

I am 14 years old and a new Java programmer. I would like to know the difference between an instance and an object.

I am learning Java from the book Teach Yourself Java in 21 Days, which repeatedly says instances and objects are the same, but later implies they are different. I understand all of the book's concepts so far except this.

Many people treat the terms as synonyms, but there is a subtle distinction. An instance is a member of a class.

For example, suppose I define the class Robot:

class Robot { ... }
In another part of my program, I declare a couple of robots:
Robot c3po, r2d2;
c3po and r2d2 are instances of the class Robot. (More exactly, c3po and r2d2 are variables containing pointers to instances of the class Robot.)

All instances are objects, so it is correct to say that c3po and r2d2 are also objects, but the term "object" is slightly more general.

If I declare an array of robots:

Robot[] killer;
Then killer is also an object. (More exactly, killer is a variable containing a pointer to an object.)

In summary, all instances are objects, but an object can be either an instance or an array.

Is this what 14-year-olds talk about these days?

DevX Pro
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date