Pemrograman dengan Java
Java sebagai salah satu
bahasa pemrograman baru menjanjikan banyak kemudahan bagi programer junior
maupun senior. Tutorial ini akan membawa Anda mengenal lebih jauh bahasa ini
melalui pembahasan konsep model perancangan dan petunjuk sederhana
penggunaannya.
Java adalah bahasa
pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak
tahun 1991. Bahasa ini dikembangkan dengan model yang mirip dengan bahasa C++
dan Smalltalk, namun dirancang agar lebih mudah dipakai dan platform
independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan
arsitektur komputer . Bahasa ini juga dirancang untuk pemrograman di Internet
sehingga dirancang agar aman dan portabel.
Platform independent
berarti program yang ditulis dalam bahasa Java dapat dengan mudah dipindahkan
antar berbagai jenis sistem operasi dan berbagai jenis arsitektur komputer.
Aspek ini sangat penting untuk dapat mencapai tujuan Java sebagai bahasa
pemrograman Internet di mana sebuah program akan dijalankan oleh berbagai jenis
komputer dengan berbagai jenis sistem operasi. Sifat ini berlaku untuk level
source code dan binary code dari program Java. Berbeda dengan bahasa C dan C++,
semua tipe data dalam bahasa Java mempunyai ukuran yang konsisten di semua
jenis platform. Source code program Java sendiri tidak perlu dirubah sama
sekali jika Anda ingin mengkompile ulang di platform lain. Hasil dari
mengkompile source code Java bukanlah kode mesin atau instruksi prosesor yang
spesifik terhadap mesin tertentu, melainkan berupa bytecode yang berupa file
berekstensi .class. Bytecode tersebut dapat langsung Anda eksekusi
di tiap platform yang dengan menggunakan Java Virtual Machine (JVM) sebagai
interpreter terhadap bytecode tersebut.
JVM sendiri adalah
sebuah aplikasi yang berjalan di atas sebuah sistem operasi dan menerjemahkan
bytecode program Java dan mengeksekusinya, sehingga secara konsep bisa dianggap
sebagai sebuah interpreter. Proses pengeksekusian program Java dapat dilukiskan
seperti di Gambar 1. Dengan cara ini, sebuah program Java yang telah dikompilasi akan
dapat berjalan di platform mana saja, asalkan ada JVM di sana.
Kompiler dan interpreter
untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh
Sun Microsystems. JDK ini dapat didownload gratis dari situs java.sun.com. Interpreter untuk program Java sendiri sering
juga disebut Java Runtime atau Java Virtual Machine. Interpreter Java, tanpa
kompilernya, disebut Java Runtime Environment (JRE) dapat didownload juga di
situs yang sama. Untuk mengembangkan program Java dibutuhkan JDK, sementara
jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja. Namun untuk
mengeksekusi applet (sebuah bytecode Java juga) Anda biasanya tidak perlu lagi
mendownload JRE karena browser yang Java-enabled telah memiliki JVM sendiri.
Selain kompiler dan interpreter,
bahasa Java sendiri memiliki library yang cukup besar yang dapat mempermudah
Anda dalam membuat sebuah aplikasi dengan cepat. Library ini sudah mencakup
untuk grafik, desain user interface, kriptografi, jaringan, suara, database,
dan lain-lain.
Java adalah bahasa
pemrograman berorientasi objek. Pemrograman berorientasi objek secara gamblang
adalah teknik untuk mengorganisir program dan dapat dilakukan dengan hampir
semua bahasa pemrograman. Namun Java sendiri telah mengimplementasikan berbagai
fasilitas agar seorang programer dapat mengoptimalkan teknik pemrograman
berorientasi objek.
Sedikit perbandingan
tambahan dengan bahasa C dan C++, Java banyak mewarisi konsep orientasi objek
dari C++ namun dengan menghilangkan aspek-aspek kerumitan dalam bahasa C++
tanpa mengurangi kekuatannya. Hal ini mempermudah programer pemula untuk
mempelajari Java namun mengurangi keleluasaan programer berpengalaman dalam
mengutak-atik sebuah program. Di balik kemudahan yang ditawarkan Java, luasnya
fasilitas library Java sendiri membuat seorang programer membutuhkan waktu yang
tidak singkat untuk dapat menguasai penggunaan library-library tersebut.
Untuk membuat program
Java, seperti telah disebutkan sebelumnya, Anda membutuhkan JDK. Proses instalasi
JDK tersebut sangat mudah dan tidak membutuhkan pengetahuan tertentu. Namun
untuk menggunakannya Anda perlu melakukan beberapa penyesuaian dengan sistem
operasi Anda. Umumnya yang perlu Anda lakukan adalah memasukkan path ke
direktori JDK Anda ke setting path pada sistem operasi Anda. Misalkan direktori
JDK Anda adalah C:\jdk1.4 maka pada Windows 98 Anda cukup
menambahkan baris perintah SET PATH=C:\jdk1.4\bin pada file autoexec.bat Anda. Untuk Windows NT/2000/XP Anda cukup menambahkan
direktori C:\jdk1.4\bin pada variabel path di System Environment. Caranya: klik kanan ikonMy
Computer, pilih Properties. Kemudian pilih tab Advanced.
Lalu klik tombol Environment Variables, cari variabel path, kemudian tambahkan path direktori JDK Anda ke dalam variabel
tersebut. Untuk Linux, tambahkan baris perintah SET CLASSPATH=(direktori jdk Anda) ke file profile Anda. Untuk mencoba JDK,
ketikkan perintah java dan javac pada shell prompt (atau DOS Command Prompt). Jika perintah
tersebut sudah dikenali maka program java atau javac akan menampilkan sintaks penggunaan. Untuk kemudahan dan
berbagai fasilitas tambahan Anda dapat menggunakan Integrated Development
Environment (IDE) untuk bahasa Java seperti Visual Café dari
Symantec atau JBuilder dari Borland.
Urutan langkah-langkah
yang harus Anda lakukan untuk membuat sebuah program Java sederhana adalah:
- Membuat source code program dengan editor teks apapun. Ingat, file tersebut harus berekstensi .java dan case sensitive.
- Mengkompile source code dengan perintah javac. Misalnya: javac HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class.
- Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld.
Berikut kode untuk HelloWorld.java:
public class
HelloWorld
{
public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}
{
public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}
Dan ini sebuah contoh
lain, yaitu applet sederhana untuk menampilkan teks di applet. Sebutlah file
ini bernama HelloWorldApplet.java:
import
java.awt.Graphics;
public class HelloWorldApplet extends java.applet.Applet
{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}
public class HelloWorldApplet extends java.applet.Applet
{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}
Secara gamblang dapat
diperhatikan bahwa struktur kedua program sangat mirip, dan hanya berbeda dalam
konteks eksekusi. Kedua program ini akan dibahas lebih lanjut setelah kita
membahas cara mengkompile dan mengeksekusi program tersebut.
Perlu diingat bahwa
bahasa Java bersifat case sensitive, sehingga Anda harus memperhatikan
penggunaan huruf besar dan kecil. Selain itu penulisan source code program
tidak harus memperhatikan bentuk tertentu, sehingga Anda bisa saja menuliskan
semua baris source code tersebut dalam satu baris asal Anda tidak lupa
membubuhkan tanda titik koma (;), atau menuliskan tiap
kata dalam satu baris tersendiri. Namun dianjurkan Anda mengikuti layout
seperti pada contoh agar program Anda mudah dibaca dan dimengerti.
Setelah kedua file
disave dengan nama HelloWorld.java dan HelloWorldApplet.java, kita akan mengkompile kedua program tersebut
dengan perintah:
prompt>
javac HelloWorld.java
prompt> javac HelloWorldApplet.java
prompt> javac HelloWorldApplet.java
Perlu diperhatikan bahwa
direktori aktif Anda saat ini adalah direktori tempat Anda meletakkan file-file
program tersebut. Anda tetap dapat mengkompile program Anda dari direktori
berbeda dengan perintah:
prompt>
javac (direktori program)/namafile.java
Setelah perintah ini
selesai, Anda akan melihat bahwa telah tercipta dua buah file .class, yaitu bytecode hasil kompilasi source code kita.
Sekarang kita akan
mencoba membahas elemen-elemen dalam kedua source code tersebut.
Pada awal Listing 2 kita menemukan perintah import. Pada tahap awal ini Anda perlu mengetahui bahwa pernyataan
tersebut hanya berfungsi mempermudah penulisan metode atau dalam bahasa
pemrograman lain disebut prosedur atau fungsi. Jadi Anda hanya perlu
menulis Graphics sebagai pengganti java.awt.Graphics, karena kita telah mengimpor java.awt.Graphics.
Kemudian di
masing-masing listing terdapat pernyataan public class. Pernyataan ini adalah pernyataan pembuka sebuah kelas. Kelas
sendiri digunakan untuk menciptakan objek. Ingat bahwa Java berorientasi objek.
Kata public di depannya berfungsi agar kelas tersebut
dapat diakses oleh semua program lain. Untuk saat ini anggaplah objek sebagai
suatu item yang dapat dimanipulasi oleh sebuah program. Dalam Listing 2 terdapat tambahan kata extends. Hal ini berarti kelas yang kita buat akan mewarisi sifat-sifat
dari kelas yang kita extends.
Dengan kata lain kita menjadikan kelas yang kita extends sebagai himpunan bagian dari kelas kita buat.
Kemudian kita menemukan
baris pernyataan public
static void main(String[] args) dan public void paint(Graphics g). Keduanya adalah pernyataan pembuka sebuah
metode. Metode sendiri adalah kumpulan pernyataan untuk melakukan suatu tugas
tertentu dalam kelas. Keduanya sebenarnya mempunyai fungsi yang sama namun
dalam konteks yang berbeda. Dalam setiap aplikasi harus ada sebuah metode yang
bernama main yang akan dieksekusi pertama kali saat
program tersebut dieksekusi. Sementara dalam applet, metode yang pertama kali
akan dieksekusi ketika applet diload adalah paint. Kata public di depannya mempunyai fungsi yang sama
dengan kata public yang ada di depan baris permulaan kelas.
Namun nantinya Anda akan menemukan juga bentuk lain seperti private dan protect yang
akan kita bahas nanti.
Pada Listing 1 terdapat kata static pada pernyataan pembuka metode main. Hal ini berarti
metode main tidak mengubah atau menggunakan objek yang
diciptakan oleh kelas tersebut, sehingga dapat dikatakan berdiri sendiri dan
tidak terikat dengan objek. Dalam metode main dalam aplikasi, parameternya adalah selalu String[] args, di mana args hanyalah sebuah
nama dari objek array dari String.
Array ini nantinya akan berisi parameter-parameter yang diberikan user sebagai
argumen command line. Sementara Anda tidak perlu mengerti mengenai parameter
tersebut, cukup diingat bahwa bentuk metode main harus selalu demikian.
Kemudian di dalam kedua
metode pada kedua listing tersebut, kita menemukan sebuah pernyataan. Anda
tentu dapat saja meletakkan lebih dari satu pernyataan dalam sebuah metode.
Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma dan akan
dieksekusi satu persatu. Kedua pernyataan pada listing ternyata memanggil
sebuah metode lain yaitu metode println dan paint. Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah
metode diperlukan tiga komponen yaitu:
- Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics g.
- Nama metode yang ingin kita pakai. Dalam hal ini println dan paint.
- Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter.
Dalam Listing 1, pernyataan System.out.println("Apa Kabar
Dunia?"); berarti carilah
objek out dalam kelas System kemudian panggil metode println dari objek out dengan parameter
berupa string "Apa
Kabar Dunia?". Sedang dalam Listing 2, pernyataan g.drawString("Apa Kabar Dunia?", 5,
25); berarti carilah
objek g kemudian panggil metode drawString pada objek g dengan
parameter "Apa
Kabar Dunia?”, 5, 25);.
Setelah selesai membahas
sintaks dasar Java dalam kedua listing, selanjutnya kita akan mencoba
mengeksekusi kedua program ini. Untuk program pertama yang berupa aplikasi
biasa, kita tinggal mengetikkan perintah java HelloWorld pada prompt dan pesan Apa Kabar Dunia? akan tampil di layar (atau mungkin di
tempat lain, bergantung sistem operasi Anda). Sedangkan untuk applet kita mesti
membuat sebuah file HTML sebagai pembungkus—atau pemanggilnya. Berikut
diberikan contoh file HTML untuk membungkus applet yang kita buat.
<HTML>
<HEAD>
<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>
<HEAD>
<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>
Beri nama helloword.html dan simpanlah di direktori yang sama dengan lokasi
file-file .java dan .class sebelumnya. Untuk mengeksekusi applet kita cukup membuka
file HTML tersebut di browser yang Java-enabled atau mengetikkan perintahappletviewer namafile.html di prompt.
Untuk saat ini Anda
telah mempunyai gambaran tentang bagaimana proses pembuatan program Java secara
sederhana dalam bentuk aplikasi biasa atau applet. Anda juga dapat mencoba
mengembangkan program sederhana tersebut sesuai dengan keinginan Anda
berdasarkan hal-hal yang sudah Anda ketahui. Konsep dasar yang sudah Anda
dapatkan akan dikembangkan lebih lanjut dalam topik-topik tutorial selanjutnya.
Selamat mencoba!