Dalam sebagian besar bahasa pemrograman, sebuah kode program harus dikompilasi (compile) maupun diterjemahkan (interpret) sehingga dapat dijalankan di dalam sebuah komputer. Software yang digunakan untuk melakukan kompilasi kode program disebut dengan compiler, sedangkan yang digunakan untuk melakukan interpretasi disebut dengan interpreter.
Perbedaan antara compiler dan interpreter adalah terletak pada proses eksekusi kodenya. Compiler akan menerjemahkan isi kode program secara keseluruhan, sedangkan interpreter akan menerjemahkan dengan cara baris demi baris. Karena proses eksekusinya dilakukan per baris, maka interpreter lebih lambat dibandingkan dengan compiler.
Java menerapkan dua proses diatas. Ini berarti bahwa Java berperan sebagai compiler dan juga interpreter. Hal ini dapat diketahui dengan konsep sebagai berikut : mula-mula kode program yang ditulis dengan bahasa Java (berekstensi .java) akan dikompilasi (oleh compiler) menjadi suatu objek. Dalam terminologi Java, kode objek ini disebut dengan istilah bytecode. Semua hasil akhir program Java akan berupa bytecode (berekstensi .class). Selanjutnya, bytecode akan dieksekusi baris demi baris (oleh interpreter). Dengan demikian, proses kompilasi hanya dilakukan sekali, akan tetapi proses interpret akan dilakukan setiap kali program dieksekusi.
Bytecode dapat dianggap sebagai sekumpulan perintah dalam bahasa mesin untuk sebuah JVM (Java Virtual Machine). Setiap interpreter Java, baik yang berupa development tool maupun sebuag web browser, merupakan implementasi dari JVM. Program yang dibuat dengan Java tidak mungkin dapat dijalankan di dalam computer maupun alat lain yang tidak memiliki JVM.
Dengan adanya konsep bytecode ini, dalam terminologi Java dikenal adanya istilah "Write once, run anywhere". Ini berarti bahwa sekali kita menulis program Java dan melakukan kompilasi terhadapnya, maka bytecode-nya dapat dijalankan di dalam platform manapun, selama platform tersebut memiliki JVM. Sebagai contoh, dimisalkan kita menuliskan dan meng-compile sebuah program Java di sebuah sistem operasi windows, dan program tersebut sudah dapat berjalan dengan baik. Jika suatu kali kita harus berganti ke sebuah sistem operasi lain, misalkan linux, maka program Java yang sudah berjalan dengan baik di windows tersebut, juga akan tetatp berjalan dengan baik pada sistem operasi linux, asalkan di dalam linux tersebut terdapat JVM.
lagi belajar ni java ..,cuman kok gak bisa juga..ada tips gak..?makasih...
ReplyDelete