Scope of a Variable in Java3 min read

What is scope of a variables in Java?

Scope refers to the visibility of variables. In other words, a scope is a section of a program, and the scope of variables refers to the section of the program where the variables are visible. Variables are declared and used within that region. Also variable declared within the block cannot be accessed outside that block.

Before understanding the variable’s scope, lets us see some certain rules to declare the variables:

  • The first character must be a letter.
  • A variable name can consist of letters A-Z, a-z, digits 0-9, and two special characters such as underscore(_) and the dollar sign($).
  • Blank spaces cannot be used in variable names.
  • Java keywords cannot be used as variable names.
  • Variable names are case-sensitive.

Types of Variables in Java:

  • local variable
  • instance variable
  • static variable

Let’s learn the scope of these each variable with an example:

1. Local Variable:

A variable that is declared within the body of the method or constructor is called a local variable. This variable is used only within that block or method where it was created other classes cannot access it. And is destroyed after exiting the method or block. Initialization of Local Variables is necessary.

Example of local variable:


2. Instance Variable:

These are the non-static variable that is declared within the class but outside the method or constructor. With the creation of Objects, Instance Variable is created and destruction of an object destroys the variables. And can be accessed only by creating objects. Initialization of Instance Variable is not necessary as it is 0 by default.

Example of Instance variable:


3. Static variable:

These variables are also known as class Variables. These are declared just like Instance Variable that within the class but outside the constructor or method but the difference is that static variable is declared using static keyword. Unlike Instance variable, only one static variable is created its value remains the same for all objects no matter how many objects user creates. Here initialization is not mandatory, it is 0 by default.

Example of Static variable:


Variables in Java
Data-Types in Java