All of you are well acquainted with the concept of variables in Java which is integral to Java career or an eventual certification. Java provides us with the liberty of accessing three variables, i.e., local variables, class variables, and instance variables. In this article, I would be discussing the implementation of instance variable in Java. Below are the points that will be discussed:

What is instance variable in Java?

Instance variables in Java are non-static variables which are defined in a class outside any method, constructor or a block. Each instantiated object of the class has a separate copy or instance of that variable. An instance variable belongs to a class.

You must be wondering about what exactly is an Instance? Let me help you by simplifying it.

When you create a new object of the class you create an instance. Consider, if you have a STUDENT class, then

class Student
{
String studentName;
int studentScore;
}

And if you create two STUDENT objects like,

Student student1 = new Student();
Student student2 = new Student();

Then two instances of the class Student will be created.

Now each student would have his own name and score right? So the value that is stored inside ‘studentName’ and ‘studentScore’ would vary for different students, they are called ‘variables’. And like you saw that these variables hold their own value for each instance, they are called Instance Variables in Java.

Now that you have understood the meaning of Instance variables, let’s move a step forward.

I will enlist the features of instance variables, which would help you in using them in a java code with ease.

Features of an instance variable?

The life of an instance variable depends on the life of an Object, i.e., when the object is created, an instance variable also gets created and the same happens when an object is destroyed.

Instance Variable can be used only by creating objects

Every object will have its own copy of Instance variables

Initialization of instance variable is not compulsory. The default value is zero

The declaration is done in a class outside any method, constructor or block

Instance variables are used when the variable has to be known to different methods in a class

In the above code, as you can see I have created three instance variables, namely, ‘StuOne’, ’StuTwo’, ’StuThree’. Likewise, you can create as many variables as you need depending upon your requirement. Now as we move further accumulating facts about instance variable, let me also elaborate to you the differences between an instance variable and a class variable!

Difference between an instance variable and a class variable

To clarify the differences, I have jotted down a few points that will help you to discard any ambiguity between the two.

Instance Variable

Class Variable

Every object will have its own copy of instance variables, hence changes made to these variables through one object will not reflect in another object.

Class variables are common to all objects of a class, if any changes are made to these variables through object, it will reflect in other objects as well.

Instance variables are declared without static keyword.

Class variables are declared with keyword static

Instance variables can be used only via object reference.

Class variables can be used through either class name or object reference.

With this, we have reached towards the end of the blog. I hope that the contents of this article proved to be beneficial to you. We’ll keep exploring the Java world in the upcoming blogs. Stay tuned!

Now that you have understood “What is Instance variable in Java”, check out the Java Trainingby Edureka, a trusted online learning company with a network of more than 250,000 satisfied learners spread across the globe. Edureka’s Java J2EE and SOA training and certification course is designed for students and professionals who want to be a Java Developer. The course is designed to give you a head start into Java programming and train you for both core and advanced Java concepts along with various Java frameworks like Hibernate & Spring.

If you wish to learn more about Java, you can refer to the Java Tutorial.

Got a question for us? Please mention it in the comments section of this “Instance variable in Java” blog and we will get back to you as soon as possible.