Sebagai tambahan dari suatu variable nama dan tipe data, suatu variable mempunyai jangkauan, Jangkauan menentukan dimana program dapat mengakses variable, jangkauan juga menentukan kehidupan dari suatu variable atau berapa lama variable itu berada dalam memory. Jangkauan ditentukan oleh dimana deklarasi variable di tempatkan di dalam program.
Untuk menyederhanakannya, coba berpikir tentang jangkauan apapun antara kurung kurawal {.....}, diluar kurung kurawal disebut dengan blok terluar, dan didalam kurung kurawal disebut dengan blok terdalam.
Jika kamu mendeklarasikan variable di blok luar. Mereka akan terlihat (yaitu, dapat dipakai) Oleh blok bagian dalam, bagaimana pun, jika kamu mendeklarasikan variable di blok dalam, kamu tidak bisa harapkan blok terluar untuk melihat itu.
Suatu jangkauan variable di dalam blok dimana jika sudah di deklarasi, dimulai dari titik dimana variable itu di dklarasikan, dan di blokbagian dalam.
Contoh, yang diberi code snippet;

Lingkup Variabel
Kode yang kita miliki disini mempunyai lima jangkauan yang ditandai oleh baris dan keterangan yang mewakili jangkauan itu, dengan variable i,j,k,m dan n, dan 5 jangkauan A,B,C,D dan E, kita mempunyai beberapa jangkauan variable berikut:
- Jangkauan variable i adalah A.
- Jangkauan variable j adalah B.
- Jangkauan variable k adalah C.
- Jangkauan variable m adalah D.
- Jangkauan variable n adalah E.
Sekarang, memberi kedua method utama dan menguji di contoh kita sebelumnya,

Jangkauan Variabel
Pada method pertama, Jangkauan variables adalah;
ages[ ] - scope A
i in B - scope B
i in C - scope C
Pada method ujian, Jangkauan variables adalah;
arr[ ] - scope D
i in E - scope E
Manakala variable di deklarasikan,hanya satu variable yang di identifikasi atau nama dapat diidentifikasi di jangkauan, maksudnya jika kamu mempunyai deklarasi berikut;
{
int test = 10;
int test = 20;
}
Compilermu akan menghasilkan error karena kamu perlu mempunyai nama yang lain dari variable di satu blok, bagaimanapun, kamu dapat mempunyai dua variable dengan nama yang sama, jika mereka tidak dideklarasikan pada blok yang sama, Contoh;
int test = 0;
System.out.print( test );
//..some code here
{
int test = 20;
System.out.print( test );
}
Manakala system pertama out.print itu memanggil, dia mencetak nilai dari variable ujian pertama sejak terdapat pada variable jangkauan itu. Yang kedua, system.out print, nilai 20 dicetak sejak tertutup ujian jangkauan variable itu.
Petunjuk Penulisan program: Hindari pemberian nama yang sama kepada variabel supaya Anda tidak kebingungan!