Sekilas Java
Akhmad Daniel Sembiring
Java adalah sebuah bahasa pemrograman komputer berbasiskan kepada Object Oriented Programming. Java diciptakan setelah C++ dan didesain sedemikian sehingga ukurannya kecil, sederhana, dan portable (dapat dipindah-pindahkan di antara bermacam platform dan sistem operasi). Program yang dihasilkan dengan bahasa Java dapat berupa applet (aplikasi kecil yang jalan di atas web browser) maupun berupa aplikasi mandiri yang dijalankan dengan program Java Interpreter. Contoh program yang ditulis dengan bahasa Java adalah HotJava yang berupa sebuah web browser.
1. 	Platform independence
Salah satu keunggulan Java adalah sifatnya yang 'platform independence', artinya Java - baik source program maupun hasil kompilasinya - sama sekali tidak bergantung kepada sistem operasi dan platform yang digunakan.  Source code sebuah aplikasi dengan bahasa Java yang ditulis di atas sistem Windows NT misalnya, dengan gampang dapat dipindahkan ke sistem operasi UNIX tanpa harus mengedit satu baris kode-pun. Ini tentunya merupakan satu nilai tambah tersendiri. Bandingkan dengan bahasa C/C++ misalnya, jika kita bekerja pada UNIX FreeBSD dan ingin memindahkannya pada HP UNIX, kita terkadang harus juga mengedit source code-nya sehingga sesuai dengan HP UNIX, walaupun keduanya masih berada dalam keluarga UNIX.
Dan yang lebih hebat lagi, bukan hanya source code-nya saja yang bisa dipindah-pindahkan antar sistem komputer, bahkan hasil kompilasinya pun bisa dijalankan di berbagai sistem komputer. Hal ini dimungkinkan dengan adanya bytecode. Setiap program yang ditulis dengan bahasa Java, hasil kompilasinya berupa bytecode, yaitu sekumpulan instruksi yang kelihatannya seperti kode mesin (machine code) tapi tidak spesifik untuk satu jenis prosesor tertentu.
Umumnya jika kita menulis program -misalnya dalam bahasa C++- pada satu sistem komputer -misalnya PC-, kompiler akan menterjemahkan source code kedalam bahasa mesin yang spesifik untuk prosesor yang ada di PC. Jika hendak dijalankan di sistem lain, Macintosh misalnya, maka source code harus dikompilasi lagi pada mesin Macintosh yang bersangkutan, dan terkadang harus melakukan pengeditan source code terlebih dahulu. Menjalankan hasil kompilasi dari platform Windows pada platform UNIX tidak akan pernah berhasil. Berikut ini ilustrasinya:

Hal yang berbeda terjadi pada lingkungan Java. Lingkungan Java terdiri dari dua bagian yaitu Java compiler dan Java interpreter. Java compiler menterjemahkan source code kedalam bytecode. Hasil kompilasi, yaitu program Java (berekstensi class), akan bisa dijalankan dengan bantuan Java interpreter. Java interpreter dapat dijalankan langsung (dari command prompt) maupun dari program applet viewer atau web browser (untuk applet). Kenapa harus bersusah payah menambahkan satu layer bytecode interpreter? Jawabnya adalah untuk memungkinkan program Java bisa dijalankan pada bermacam-macam sistem komputer asalkan pada sistem komputer itu terdapat Java interpreter.
Kelemahan dari penggunaan bytecode adalah kecepatan operasi yang lebih lambat daripada program-program biasa. Hal ini karena program-program yang ditulis pada bahasa pemrograman yang hardware-specific dapat langsung berjalan di atas hardware dimana ia dikompilasi.. Program bytecode harus diterjemahkan terlebih dahulu oleh interpreter baru dijalankan di atas hardware. 
Karena keunggulan-keunggulan di atas, program Java sangat baik digunakan untuk aplikasi internet maupun intranet, mengingat komunitasi internet dan intranet biasanya menggunakan sistem operasi dan platform yang sangat berbeda-beda dalam mendapatkan dan memberikan informasi.
2. 	Memulai Java
Untuk bisa memulai menggunakan Java, minimal kita harus terlebih dahulu menginstall Java Development Kit yang dapat di-download dengan gratis dari http://java.sun.com. Dapat juga digunakan program developent tools Java lainnya yang memiliki fasilitas yang lebih lengkap seperti Symantec Café, Borland J Builder, Microsoft Visual J++, dan lainnya.
Seperti telah diterangkan di atas, hasil kompilasi Java dapat berupa aplikasi maupun applet. Aplikasi merupakan hasil kompilasi program Java yang dapat langsung dijalankan dari command prompt dengan bantuan program java interpreter, sedangkan applet harus dijalankan di atas browser atau appletviewer. Perbedaan applet dan aplikasi Java terletak pada penurunannya dari class Applet. Perhatikan contoh di bawah ini:
Aplikasi Java

class JavaPertama {
	public static void main (String args[]) {
	  System.out.println("Halo, ini    
     Aplikasi java saya yang pertama!");
	}
}	Aplikasi Java
import java.awt.Graphics;
public class JavaAppletPertama extends  java.applet.Applet {
	public void paint(Graphics g) {
		g.drawString ("Ini applet java  
      ku yang pertama!",5, 25);
	}
}	

Pada aplikasi Java, kita membuat sebuah class baru yang bukan merupakan turunan dari class apapun. Apa yang akan dikerjakan oleh aplikasi tersebut terletak di dalam prosedur main. Dalam contoh di atas, aplikasi akan mencetak tulisan “Halo, ini Aplikasi java saya yang pertama!” pada layar monitor (diwakili oleh objek System.out). Setelah dikompilasi kita akan mendapatkan bytecode yang berada dalam bentuk file  dengan ekstensi class. Hal yang perlu diperhatikan adalah bahwa:
1.	nama file source code harus sama dengan nama class yang didefinisikan di atas (dalam hal ini JavaPertama.java)
2.	penamaan dan penulisan syntaks dalam Java adalah case sensitive
3.	nama file bytecode hasil kompilasi sama dengan nama class yang didefinisikan (dalam hal ini JavaPertama.class)
Sedangkan pada applet terdapat baris class JavaAppletPertama extends java.applet.Applet yang menentukan bahwa class yang baru kita buat (JavaAppletPertama) merupakan turunan dari class Applet yang berada pada paket java.applet. Salah satu yang menarik dari Java adalah telah tersedianya sedemikian banyak class yang siap pakai dan tinggal diturunkan (baca: digunakan) untuk membuat applet maupun aplikasi baru. Kumpulan class-class ini disimpan dalam suatu paket yang diakses dengan memanggil nama paket yang bersangutan. Paket-paket ini telah meliputi paket bahasa Java dasar (java.lang), paket abstraksi window dan objek-objeknya (java.awt), sampai dengan paket networking TCP/IP (java.net).
Setelah diturunkan dari class Applet, class yang baru akan secara otomatis memiliki sifat (attribute) dan kelakuan (behaviour) yang sama dengan class Applet. Namun class Applet ini baru hanya merupakan template untuk pembuatan applet-applet baru. Kita harus melakukan modifikasi (istilahnya overriding) terhadap prosedur dan fungsi yang tersedia dari class Applet. Salah satu prosedur  yang akan kita override pada contoh ini adalah prosedur paint() yang menentukan bagaimana dan apa yang akan ditampilkan pada applet saat pertama kali muncul.
Pada applet di atas kita juga menggunakan class Graphics yang gunanya untuk manipulasi tampilan Graphics pada applet kita. Untuk itu kita harus secara eksplisit memanggil class tersebut dengan nama tempat paketnya, yaitu: import java.awt.Graphics. 
Lalu pada prosedur paint(), kita lakukan penggambaran sesuatu pada applet dengan menggunakan function drawString() yang terletak pada objek g yang bertype Graphics. Function ini mengambil parameter string apa yang akan digambarkan, posisi x, dan posisi y (dalam pixel) pada applet.
Setelah dikompilasi, kita akan memperoleh sebuah file class yang bernama JavaAppletPertama.class. Untuk melihat hasil applet tersebut, kita harus membuat sebuah halaman HTML yang memanggil applet tersebut. Gunakan tag HTML <applet> </applet> sebagai berikut:
<HTML>
<HEAD>
<TITLE> Percobaan membuat applet </TITLE>
</HEAD>
<BODY>
Java applet ku mengatakan:
<APPLET CODE="JavaAppletPertama.class" WIDTH=150  HEIGHT=25></APPLET>
</BODY>
</HTML>
Sekarang jalankan web browser dan buka file HTML ini (misalnya applet.html) dan lihat hasilnya. Cara lain untuk melihat applet ini adalah dengan menggunakan program appletviewer yang merupakan program bawaan Java Development Kit.
3. 	Informasi lebih lanjut
Salah satu keuggulan Java adalah kemampuannya dijalankan pada web browser ini. Dalam hal ini web browser berfungsi sebagai Java Interpreter yang berfungsi menterjemahkan bytecode dan menampilkan hasilnya pada browser. Ini berarti kita akan mendapatkan tampilan halaman web yang animatif, dinamis, maupun interaktif, tergantung dari program Java yang dibuat. Tanpa Java, kita hanya akan mendapat tampilan dokumen HTML yang statis, tidak menarik dan tidak interaktif. Banyak contoh applet yang tersedia di internet yang telah siap digunakan untuk memperindah dan membuat halaman web anda lebih interaktif. Sebagian ada yang gratis dan ada pula yang harus anda beli. Silahkan kunjungi search engine dengan keyword java, class, atau java class. Site lain yang layak anda kunjungi adalah http://www.developer.com dan http://java.sun.com
Untuk mempelajari Java lebih detail, sekarang  terdapat banyak literatur baik yang ada di internet maupun di buku. Salah satunya adalah “Java dan JavaScript” oleh Onno W. Purbo & Akhmad Daniel S, PT Elex Media Komputindo 1998.