Variabel dan Tipe DataSabtu, 2008-11-01, 20:01:44
Oleh : Frieyadie
Variabel dalam ilmu matematika adalah sesuatu yang menyimpan nilai yang dapat berubah-ubah. Demikian juga dalam bahasa pemrograman. Variabel dalam bahasa pemrograman adalah lokasi dalam memori di mana sebuah nilai disimpan, dan nilai tersebut dapat diubah. Setiap variabel memiliki nama, tipe, dan nilai.
Untuk menggunakan variabel, pertama kita harus mendeklarasikan variabel tersebut. Informasi yang dibutuhkan dalam pendeklarasian variabel adalah tipe variabel tersebut. Tipe variabel sendiri akan kita bahas sebentar lagi.
Setelah mendeklarasikan variabel, kita dapat memberi nilai kepada variabel tersebut, yang dalam bahasa pemrograman diistilahkan dengan assignment. Jadi assignment adalah proses pemberian nilai kepada sebuah variabel.
Kita dapat mendefinisikan variabel di bagian manapun dari program sama seperti statement. Namun dianjurkan pendefinisian variabel diletakkan pada awal pendefinisian metode di mana variabel tersebut digunakan. Dalam beberapa hal, kita perlu melakukan pendefinisian variabel di tempat lain untuk menyesuaikan ruang lingkup berlakunya variabel tersebut.
Untuk memahami lebih jauh pendefinisian variabel dan hal-hal yang dapat Anda lakukan dalam mendefinisikan variabel, perhatikanlah kode berikut ini.
public static void main (String[] args)
{
int x; // deklarasi variable biasa
int y, z; // deklarasi dua variabel bertipe sama sekaligus
boolean isRunning = true;
// deklarasi sekaligus assignment nilai
int a = 3, b = 4; // deklarasi sekaligus assignment nilai
int c, d = 6; // deklarasi dan assignment variabel kedua
}
Kode diatas menunjukkan berbagai cara mendefinisikan variabel. Suatu saat mungkin Anda akan merasakan manfaat tertentu dalam menggunakan cara-cara pendefinisian tersebut. Namun disarankan Anda menggunakan cara biasa saja demi kerapian dan pencegahan kesalahan-kesalahan akibat kelalaian dalam penulisan program.
Java memiliki tiga jenis variabel, yaitu: variabel instans, variabel kelas, dan variabel lokal.
- Variabel instans adalah variabel yang digunakan sebagai atribut dari sebuah objek. Instans adalah objek yang diciptakan dari sebuah kelas. Anggaplah kelas sebagai template untuk membuat objek. Anda akan memahami lebih jauh mengenai hal ini dalam pembahasan mengenai pemrograman berorientasi objek.
- Variabel Kelas adalah variabel yang digunakan sebagai atribut dari sebuah kelas. Berbeda dengan variabel instans, variabel kelas akan bernilai sama bagi semua instans dari kelas ybs.
- Variabel Lokal adalah variabel yang didefinisikan dan digunakan hanya dalam sebuah metode.
Ketiga jenis variabel ini didefinisikan dengan cara yang sangat mirip tetapi variabel kelas dan instans diakses dan diassign dengan cara yang agak berbeda dibandingkan variabel lokal.Saat ini kita hanya akan memusatkan perhatian pada variabel lokal.
Sebagai tambahan, tidak seperti bahasa pemrograman lain, Java tidak memiliki variabel global, yaitu variabel yang tersedia bagi semua bagian program. Dalam Java kita menggunakan variabel kelas dan instans untuk mengkomunikasikan informasi global di antara objek-objek.
Hal ini disebabkan Java menganut paradigma pemrograman berorientasi objek murni, sehingga segala hal dipandang sebagai interaksi antarobjek bukan antar bagian program.
Nama sebuah variabel harus diawali huruf atau garis bawah (_) atau tanda dolar ($), dan tidak boleh diawali angka. Karakter berikutnya boleh angka. Ingat kembali Java bersifat case sensitive, jadi perhatikan besar kecil huruf yang Anda pakai dalam nama variabel.
Java juga menggunakan set karakter Unicode. Namun hal ini tidak terlalu penting untuk Anda ketahui. Disarankan agar membuat nama variabel yang mengandung makna, sehingga memudahkan pembacaan program Anda, misalnya goButton, cancelButton, statusLabel, dll.
Jenis Variabel
Setiap variabel harus memiliki sebuah tipe. Tipe tersebut bisa berupa salah satu dari delapan tipe primitif Java, nama kelas atau interface, atau sebuah array. Saat ini kita hanya akan membahas tipe primitif dan tipe kelas saja.
Tipe Primitif
Java memiliki delapan jenis tipe primitif atau tipe-tipe dasar yang builtin. Tipe tersebut disebut primitif karena dibangun ke dalam sistem dan bukan benar-benar objek sehingga pemakaiannya lebih efisien. Tipe-tipe tersebut tidak bergantung pada arsitektur mesin, sehingga pemakaiannya tidak mengganggu portabilitas program Anda.
Penting untuk diperhatikan bahwa tipe primitif dimulai dengan huruf kecil, karena ada kelas yang memiliki nama yang sama dengan tipe primitif tersebut yang disebut kelas pembungkus.
Tipe Kelas
Tipe kelas digunakan untuk menyimpan instans dari kelas atau instans subkelas dari kelas tersebut. Subkelas adalah kelas yang mewarisi sifat-sifat kelas tertentu.
Literal
Literal adalah sebuah istilah dalam bahasa pemrograman yang berarti sesuatu nilai yang memiliki arti atau nilai sesuai dengan apa yang kita ketikkan. Misalnya kalau Anda memberi nilai 4 pada suatu variabel bertipe int, maka nilai variabel tersebut adalah 4. Bilangan, karakter, dan string kesemuanya merupakan literal. Berikut dijelaskan beberapa jenis literal dalam Java.
Literal angka dapat berupa bilangan positif. Angka negatif ditulis dengan menambahkan tanda minus (-) di awal angka positif. Angka oktal dengan menambahkan angka 0 di awalnya. Angka heksadecimal dengan menambahkan 0x di awalnya.
Literal angka floating point (pecahan desimal) biasanya memiliki dua bagian yaitu :
- Bagian Integer dan
- Bagian Desimal.
Untuk memaksa suatu bilangan menjadi misalnya float atau long, cukup tambahkan huruf F atau L di belakang bilangan tersebut. Untuk eksponen gunakan huruf E, seperti 3.0E-7 yang berarti 3,0 kali 10 pangkat minus 7 (0,0000003). Literal boolean terdiri atas true dan false.
Literal karakter terdiri sebuah karakter dalam kutip tunggal seperti 'a', '#', atau '1'. Literal karater juga memiliki karakter khusus yang mewakili karakter noncetak. Huruf d pada oktal, hekadecimal, dan escape Unicode mewakili bilangan biasa atau bilangan heksadecimal.
Literal string pada dasarnya adalah kombinasi dari karakter dalam tanda kutip ganda. Maka itu karakter-karakter khusus juga berlaku dalam literal string. Sebagai kelas tersendiri (bukan tipe primitif) String mempunyai metode-metode sehingga Anda dapat melakukan penggabungan, tes, dan pengubahan literal String dengan mudah. |