Ruang Lingkup Variabel Pada Program Java

Ketika anda membuat variabel, sebenarnya anda membuat ruang lingkup terbatas untuk variabel itu. Jadi ruang lingkup variabel ini akan menetapkan variabel manakah yang akan digunakan.

Maksudnya??

Ruang lingkup dari varabel ini adalah dimulai dari deklarasi sampai dengan akhir blok kode yang mengandung variabel.

Variabel lokal adalah variabel yang ditetapkan di dalam method.

Penting untuk diingat bahwa variabel lokal harus dideklarasikan dan diberikan nilai terlebih dahulu sebelum dapat digunakan.




Bagaimana dengan parameter dari suatu method?

Parameter dari method juga adalah merupakan variabel lokal, yang ruang lingkupnya mencakup keseluruhan method.

Contohnya :

Variabel yang dideklarasikan sebagai inisialisasi dari header pernyataan perulangan for-loop akan memiliki ruang lingkup dalam keseluruhan loop.

Namun, variabel yang dideklarasikan didalam body dari for-loop akan memiliki ruang lingkup terbatas di dalam body loop tersebut, yaitu dari mulai variabel tersebut dideklarasikan sampai dengan akhir blok yang mengandung variabel.

Untuk lebih jelasnya seperti di bawah ini:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public static void perulangan(){

      *

      *

      for(int i = 0; i<= 4; i++) {

          *

          *

          int j;

          *

          *

          *

     }

} 

Pada kode di atas variabel i memiliki ruang lingkup dari baris ke 7 sampai dengan blok kode loop yaitu baris ke 21, sementara variabel j hanya memiliki ruang lingkup dari baris ke 13 samapai dengan blok kode loop pada baris ke 21.

Anda dapat mendeklarasikan variabel lokal dengan nama yang sama di dalam blok method yang berbeda, namun anda tidak dapat mendeklarasikan variabel lokal dua kali di dalam blok yang sama atau di dalam blok yang bersarang, seperti pada contoh di bawah ini, kode akan berjalan lancar:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class RuangLingkupVariabel {
 
 public static void main(String args []){
  
  method();
  
 }
 
 public static void method() {
  
  int a = 1;
  int b = 1;
  
  for (int i = 1; i < 10; i++) {
   a += i;
   System.out.print(a + " ");
  }
  System.out.println();
  for (int i = 1; i < 10; i++) {
   b += i;
   System.out.print(b + " ");
  }
 }

}

Perhatikan pada contoh di atas, mendeklarasikan variabel i dalam blok yang tidak bersarang, tidak akan menjadi masalah.

Namun lain halnya dengan contoh koding di bawah ini, dimana kode akan error karena mendeklarasikan variabel i di dalam dua blok bersarang.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
public class RuangLingkupVariabel {
 
 public static void main(String args []){
  
  method();
  
 }
 
 public static void method() {
  
  int i = 1;
  int jumlah = 0;
  
  //Duplikat variabel lokal i, ini merupakan kesalahan
  for (int i = 1; i <= 5; i++) {
   jumlah += i;
  }
  
 }

}

Kesalahan yang juga sering terjadi adalah mendeklarasikan variabel di dalam blok method, kemudian mencoba untuk menggunakannya di luar blok.

Contohnya:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class RuangLingkupVariabel {
 
 public static void main(String args []){
  
  method();
  
 }
 
 public static void method() {
  
 
  for (int i = 1; i <= 5; i++) {
   
  }
  
  // Error akan terjadi, karena variabel i dianggap tidak
  // pernah dideklarasikan, karena berada diluar blok
  System.out.print(i);
  
 }

}

Jadi penting untuk diingat aturannya yaitu variabel dapat dideklarasikan berulang kali pada blok yang tidak bersarang, namun hanya dapat dideklarasikan satu kali pada blok bersarang.

No comments

Bahasa Java. Powered by Blogger.