Unknown

Konsep Variabel pada Java Programing

Pengertian Variabel

Variabel adalah satuan dasar penyimpanan dalam program Java, kalau di dunia nyata variabel dapat kita ibaratkan sebuah tempat penyimpanan yang dapat menampung suatu benda yang sesuai dengan tempat penyimpanan tersebut. Sebagai contoh keranjang yang di khususkan untuk menampung mie, maka yang dapat ditampungnya adalah mie itu sendiri.
Dalam Java, suatu variabel dapat bersifat lokal (sementara) misalakan variabel yang ada di dalam perulangan for, atau dapat juga varaibel instance yang dapat diakses oleh semua method dalam class.
Lalu untuk benda (mie sebagai contoh diatas) atau sesuatu yang ada dalam varaibel disebut dengan nilai. Nilai dalam suatu variabel dapat berubah selama program berjalan. Nilai yang tersimpan dalam suatu variabel tidak harus berupa bilangan atau mie saja. Kita juga dapat membuat variabel yang dapat menampung huruf, seperti halnya kita dapat membuat tempat penyimpanan khusu untuk buah selain untuk mie. Nah jenis nilai yang tersimpan dalam variabel ini dalam Java tergantung pada tipe data yang didukung oleh Java.

Manggunakan Variabel

Dalam Java, secara eksplisit kita harus mendeklarasikan variabel sebelum kita menggunakannya. Java juga merupakan strongly language programing dimana dalam setiap pembuatan variabel kita juga harus mendefinisikan tipe data yang digunakan. Java juga secara eksplisit mengharuskan kita untuk mendeklarasikan variabel sehingga jika terdapat salah ejaan (misspell) dalam nama variabel, compiler akan menemukan kesalahan tersebut dan menampilkannya sebagai kesalahan compiler (compiler error).

Deklarasikan Variabel

Bentuk Umum

Untuk mendefinisikan variabel terlebih dahulu tentukan tipe datanya lalu nama variabel dan diakhiri oleh tanda titik-koma karena pendeklarasian variabel merupakan sebuah bentuk pernyataan (statement). Bentuk dasar dalam pendeklarasian varaibel adalah sebagai berikut :
tipe namaVariabel;
Contohnya adalah seperti berikut ini :
public class ContohVariabel {

    int panjang;

    String namaLengkap;

    double radius;

    // kode selanjutnya disini

}
Contoh diatas adalah bagaimana cara kita mendeklarasikan suatu variabel. Variabel panjang akan menampung nilai integer, namaLengkap akan menampung nilai String, dan radius akan menampung nilai double. Untuk tipe data yang didukung oleh Java akan dibahas di artikel selanjutnya.

Deklarasikan Dua Variabel atau Lebih dalam Satu Statement.

Kita dapat mendeklarasikan dua atau lebih variabel dengan tipe data yang sama dalam satu baris statement, caranya adalah dengan memisahkan nama variabel dengan tanda baca koma. Contohnya adalah sebagai berikut :
public class ContohDeklarasiDuaVariabel{

    int a, b, c;

    // kode selanjutnya disini

}
Potongan code diatas memperlihatkan bagaimana kita mendeklarasikan tiga variabel dalam satu statement yaitu variabel a , b , c dengan tipe data int . Tetapi, cara pendeklarasian seperti contoh diatas tidak dianjurkan untuk dilakukan karena hal ini akan sedikit menyulitkan orang lain dalam membaca kode kita sehingga menyulitkan dalam hal maintanance di kemudian hari.

Deklarasi variabel class

Variabel kelas adalah variabel yang dapat diakses oleh semua method di dalam class, termasuk static method seperti method main. Ketika mendeklarasikan variabel class, ada dua aturan daras yang harus diikuti, yaitu :
1. Menempatkan deklarasi variabel pada blok class, tetapi tidak adalam method yang berada dalam class
2. Kita harus mamasukan kata kunci static dalam pendeklarasian varaibel class. Kata kunci static ditempatkan sebelum tipe variabel.
Berikut contoh dari variabel class agar lebih jelasnya :
public class SalamSatu {
    // Mendeklarasiakan variabel class
    static String salam = "Assalamu'alaikum!!";

    public static void main (String[] args){
        System.out.println(salam);
        System.out.println(nama);
    }

    static String nama = "Noor Abdullah Adiana";
}
Dapat dilihat dari contoh diatas bagaimana kita mendeklarasikan variabel kelas di awal dan di akhir class, kedua – duanya bisa dilakukan, tetapi dianjurkan untuk mendeklarasikan setiap variabel di awal class karena memudahkan untuk maintanance kode di kemudian hari.

Deklarasi Variabel Instance

Deklarasi variabel instance sama halnya dengan variabel class, tetapi tidak menggunakan kata static dalam pendeklarasiannya. Variabel instance terhubung dengan instance dari class. Jadi kita hanya bisa menggunakannya ketika membuat instance dari class yang bersangkutan. Karena static method tidak terhubung dengan instance dari class, kita tidak bisa menggunakan variabel instance dalam static method dan memasukkannya dalam main method.
Berikut adalah contoh dari pendeklarasian variabel instance dan jika kita mencoba untuk mengakses variabel tersebut melalui main method (yang merupakan static method) maka saat di-compile akan mengalami error.
public class SalamDua {

    // Mendeklarasiakan variabel instance
    String salam = "Assalamu'alaikum!!";

    public static void main (String[] args){
        System.out.println(salam);
    }
}
Apabila kita compile program diatas, maka akan terjadi error dengan pesan sebagai berikut :
Salam.java:7: error: non-static variable salam cannot be referenced from a static context
        System.out.println(salam);
                           ^
1 error

Deklarasi Variabel Lokal

Variabel lokal adalah variabel yang dideklarasikan di dalam badan method. Jadi kita hanya dapat menggunakan variabel tersebut di dalam method saja. Method lain dalam class tidak peduli akan keberadaan variabel tersebut. Dan variabel lokal hanya akan ada jika method (yang memiliki variabel lokal tersebut) dieksekusi. Dalam pendeklrasiannya kita tidak perlu menambahkan kata static (seperti yang harus dilakukan pada saat mendeklarasikan variabel class). Jika kata static digunakan dalam pendeklarasian variabel lokal, maka compiler akan menghasilkan pesan error dan menolak untuk melakukan compile terhadap program.
Berikut adalah contoh program yang menunjukkan pendeklarasian variabel lokal di dalam method main:
public class SalamTiga{

    // Awal dari method
    public static void main(String[] args){

        // Deklarasi variabel local
        String salam = "Assalamu'alaikum!!";
        System.out.println(salam);

    } // Akhir dari method
}
Berbeda dengan variabel class dan instance, variabel lokal dideklarasikan terlebih dahulu sebelum statement yang menggunakan variabel tersebut. Perhatikan contoh program berikut ini :
public class SalamTiga{

    // Awal dari method
    public static void main(String[] args){

        // Deklarasi variabel local
        salam = "Assalamu'alaikum!!";
        System.out.println(salam);
        String salam;

    } // Akhir dari method
}
Contoh sourcecode diatas pada saat di kompilasi akan terjadi error seperti berikut ini :
SalamTiga.java:7: error: cannot find symbol
        salam = "Assalamu'alaikum!!";
        ^
  symbol:   variable salam
  location: class SalamTiga
SalamTiga.java:8: error: cannot find symbol
        System.out.println(salam);
                           ^
  symbol:   variable salam
  location: class SalamTiga
2 errors
Dapat kita lihat dari pesan error tersebut compiler tidak bisa menemukan variabel salam, karena variabel tersebut baru dideklarasikan pada line ke-9, sedangkan statement yang berada pada baris ke-7 (dan juga baris ke-8) sudah menggunakan variabel tersebut.

Inisialisasi Variabel

Inisialisasi adalah pemberian nilai pada variabel yang sudah kita deklarasikan, sebenarnya pada contoh – contoh sebelumnya telah tersirat bagaimana caranya inisialisai variabel. Proses inisialisasi variabel ini secara eksplisit dilakukan dengan menggunakan assignment statement yang ditandai dengan tanda baca sama dengan (=). Variabel yang akan diberi nalai selalu berada disebelah kiri sedangkan nialinya berada di sebelah kanan. Adapun bentuk umum dari assignment statement adalah sebagai berikut :
variabel = nilai;

variabel = ekspresi;
Contoh inisialisasi pada variabel adalah sebagai berikut :
public class InisialisasiVariabel{
    // Deklarasi variabel
    int i;
    int luas;

    // Inisialisasi variabel
    i = 2480;
    luas = 20 * 5;

    // Bisa juga seperti berikut
    int tinggi = 20;

    // Atau bisa juga seperti ini
    int a = 5, b = 10;

}
Dari contoh diatas ada beberapa cara untuk melakukan inisialisai, pertama adalah mendeklarasikan varaibel baru di inisialisasi seperti pada variabel i dan luas, atau dengan mendeklarasikan variabel lalu langsung diikuti dengan inisialisasi seperti varaibel tinggi, ataupun kita juga dapat menginisialisasi dua variabel atau lebih dalah satu baris statement seperi pada varaibel a dan b. Tetapi memang yang lazim digunakan adalah cara pertama.
Selain itu dari contoh diatas, inisialisasi variabel dapat menggunakan nilai langsung atau dengan melakuakn sebuah ekspresi yang menghasilkan sebuah nilai yang sesuai dengan tipe datanya.

Konstanta

Konstanta yang juga disebut variabel final, merupakan variabel yang nilainya tidak dapat kita rubah setelah diinisialisasi. Untuk mendeklarasikan konstanta, kita menambahkan kata kunci final pada pendeklarasian variabel:
final int JUMLAH_HARI = 7;
Meskipun kita dapat membuat variabel konstanta lokal, kebanyakan variabel konstanta merupakan variabel kelas atau instance. Untuk mendeklarasikan konstanta kelas, tambahkan static final pada pendeklarasian variabel:
static final JUMLAH_HARI = 7;
Contoh nya adalah sebagai berikut :
public class Konstanta{

    // Deklarasi dan inisialisasi konstanta
    static final JUMLAH_HARI = 7;

    public static void main (String[] args){

        // Mencoba untuk merubah nilai konstanta
        JUMLAH_HARI = 8;

        System.out.println(JUMLAH_HARI);

    }
}
Kode sumber diatas apabila kita compile maka akan terjadi error, kurang lebih seperti berikut :
Konstanta.java:4: error: <identifier> expected
    static final JUMLAH_HARI = 7;
                            ^
1 error

Cakupan Variabel

Cakupan dari suatu variabel merupakan area dimana variabel termasuk (semestinya berada), hal tersebut ditentukan oleh area dimana variabel tersebut dideklarasikan. Dalam istilah sederhananya, setiap variabel ada (exists) di dalam blok dimana variabel dideklarasikan termasuk blok – blok yang dideklarasikan di dalam blok tersebut.
Contohnya adalah sebagai berikut :
public class CakupanVariabel{ // Awal dari blok CakupanVariabel

    // Deklarasi variabel 
    static int a;

    static void blokSatu(){ // Awal dari blok blokSatu didalam blok CakupanVariabel

        // Deklarasi variabel blokSatu
        a = 4;
        int b = 2;
        int hasil = a + b;

    } // Akhir dari blokSatu

    public static void main (String[] args){ // Awal dari blok main didalam blok CakupanVariabel

        // Mengakses varaibel a
        a = 2;
        int hasilDua = a + 4;
        System.out.println(hasilDua);

    } // Akhir dari blok main

} // Akhir dari blok CakupanVariabel
Dari contoh diatas kita dapat melihat bahwa varaibel a bisa diakses dari blok lain asalkan masih didalam blok yang mendeklarasikan varaibel a tersebut. Tetapi apabila kita sedikit merubah kode diatas menjadi seperti berikut :
public class CakupanVariabel{ // Awal dari blok CakupanVariabel

    // Deklarasi variabel 
    static int a;

    static void blokSatu(){ // Awal dari blok blokSatu didalam blok CakupanVariabel

        // Deklarasi variabel blokSatu
        a = 4;
        int b = 2;
        int hasil = a + b;

    } // Akhir dari blokSatu

    public static void main (String[] args){ // Awal dari blok main didalam blok CakupanVariabel

        // Mengakses varaibel hasil
        System.out.println(hasil);

    } // Akhir dari blok main

} // Akhir dari blok CakupanVariabel
Ketika di compile maka akan terjadi error seperti ini :
CakupanVariabel.java:18: error: cannot find symbol
        System.out.println(hasil);
                           ^
  symbol:   variable hasil
  location: class CakupanVariabel
1 error
Hal ini menunjukan bahwa variabel hanya dikenali didalam blok yang mendeklarasikannya atau blok lain yang ada di dalam blok deklarasi variabel yang bersangkutan.
0 Responses

Post a Comment