Kompilasi Pemrograman Java

BAB I
PENDAHULUAN
1.1 Latar Belakang
Perangkat lunak adalah satu bagian yang tak terpisahkan dari system
computer

saat

ini.

Perkembangan

teknologi

saat

ini

dapat

dipastikan


mengikutsertakan perkembangan perangkat lunak. Perkembangan pembangunan
perangkat lunak mengalami kemajuan yang signifikan sejak 6 dekade terakhir :
dimulai dari sekedar memberi instruksi biner ke system computer sederhana,
pembuatan bahasa pemrograman tingkat rendah, tingkat menengah sampai tingkat
tinggi. Selain itu, karena semakin kompleknya kebutuhan akan computer sebagai alat
Bantu komputasi, perkembangan perngkat lunak juga telah melahirkan konsepkonsep pemrograman, mulai dari konsep pemrograman sederhana (hanya menuliskan
baris-baris program dari yang berjalan dari awal sampai akhir program), pembuatan
prosedur-prosedur, sampai pada pemrograman berorientasi obyek.
Pemrograman berorientasi obyek merupakan konsep pemrograman yang
relatif baru, di mana pemrograman diarahkan ke paradigma pembentukan obyekobyek yang saling berinteraksi. Selain konsepnya lebih mudah dicerna oleh
pemrograman, baik yang awam sekalipun, konsep pemrograman berorientasi obyek
mempermudah maintenance software sehingga software menjadi lebih fleksibel
apabila akan direvisi atau dikembangakan.

1

2

1.2 Maksud dan Tujuan

Maksud dan tujuan dari pembuatan makalah ini adalah :
1) Untuk memenuhi salah satu tugas mata kuliah Pemrograman Berorientasi
Objek.
2) Menjelaskan kompilasi pemrograman java pada mata kuliah Pemrograman
Berorientasi Objek.
3) Mengidentifikasi bagian dasar dari program Java.

1.3 Rumusan Masalah
1) Apa yang dimaksud dengan pemrograman?
2) Apa Yang dimaksud Dengan Teknologi Java?
3) Mengapa mempelajari Pemrograman Java?
4) Fitur apa saja yang terdapat pada pemrograman Java?

BAB II
PEMBAHASAN
2.1 Pengertian Java
Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsysytems
pada pertengahan tahun 1990. Menurut definisi Sun, Java adalah nama untuk
sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada
computer standaloneataupun pada lingkungan jaringan. Kita lebih menyukai Java

sebagai sebuah teknologi dibanding hanya sebuah bahasa pemrograman, karena Java
lebih lengkap karena Java lebih lengkap dibanding sebuah bahasa pemrograman
konvensional.
Bahasa inilah yang mungkin dirujuk sebagai "Java" secara umum. Java
merupakan bahasa Object Oriented Programming yang bisa diklaim telah
diimplementasikan secara penuh . OOP di Java merupakan pengembangan lebih
lanjut dari dari bahasa C++. Kompilasi kode program Java dilakukan menggunakan
tool command-line yang bernama javac, atau biasa disebut compiler Java. Tahap
kompilasi ini bertujuan untuk mengonversi kode sumber ke program biner yang
berisi bytecode, yaitu instruksi-instruksi mesin. Contoh berikut memperlihatkan cara
melakukan kompilasi pada file program Coba.java (asumsi sudah berada di
command-line atau shell). javac Coba.java
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer
termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat
masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan
dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan

3

4


C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan
rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya
dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin
Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/nonspesifik (general purpose), dan secara khusus didisain untuk memanfaatkan
dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang
memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi
yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana
pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan,
dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak
aplikasi ataupun aplikasi.
Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan
selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut
belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick
Naughton, Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya
dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat
oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road
di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan
sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah

peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang
ini. Teknologi baru ini dinamai "*7" (Star Seven). Setelah era Star Seven selesai,
sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The

5

Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100
Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam
waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan
pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara
mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai
hanya di kalangan akademisi dan militer. Mereka menjadikan perambah (browser)
Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai
Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis
pertama, Web Runner berganti nama menjadi Hot Java.
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi
1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali
pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.Sayang terjadi
perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel

Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini
dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan
kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release
Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang
tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari
kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon
kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain
berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).

6

2.2 JDK (Java Development Kit)
Java Development Kit (JDK) adalah Sun Microsystems produk ditujukan
untuk pengembang Java. Sejak diperkenalkannya Java, telah jauh SDK Java yang
paling banyak digunakan. Pada tanggal 17 November 2006, Sun mengumumkan
bahwa akan dirilis di bawah GNU General Public License (GPL), sehingga membuat
perangkat lunak bebas. Hal ini terjadi sebagian besar pada tanggal 8 Mei 2007.
Untuk melakukan kompilasi kita memerlukan tools tambahan yang ditambahkan ke
dalam JRE dan dikenal sebagai Java Development Kit (JDK). Jadi di dalam JDK

sendiri secara otomatis sudah terdapat platform JRE. JDK Java Development Kit.
Dengan kata sederhana ini berisi program-program (seperti javac yaitu program
untuk meng-compile kode sumber) untuk membantu Anda mengembangkan /
menulis kode Java. Seperti halnya JRE, JDK juga memiliki JVM di dalamnya.

2.3 Java Runtime Environment
Teknologi Java sebagai suatu platform, yang biasa disebut juga sebagai Java
Runtime Environment (JRE). Platform ini diperlukan sebagai lapisan atau layer
untuk menjalankan program Java yang telah dikompilasi (bytecode). Java Runtime
Environment adalah kumpulan file library & executable tuk menjalankan program
Java. Komputer harus meng-instal JRE bila ingin menjalankan program Java ntah itu
program aplikasi desktop maupun aplikasi yg berjalan di dalam web (Applet).
JRE Java Runtime Environment. JRE inilah yang memungkinkan sebuah
program Java dapat berjalan di mesin Anda. JRE ini mengeksekusi binary-binary
dari class-class dan mengirimnya ke JVM untuk diproses lagi ke prosesor. Setiap
JRE pasti memiliki sebuah JVM di dalamnya untuk melakukan pemrosesan

7

selanjutnya. Dengan kata sederhana itu harus download oleh siapa saja yang ingin

menjalankan / membaca Program Java (aplikasi Java, applet Java & Aplikasi Java
WebStart).

2.4 Pengertian Pemrograman
Pemrograman merupakan proses ―penanaman‖ instruksi ke dalam komputer
sedemikian rupa sehingga dalam operasinya, computer tersebut akan mengacu
kepada instruksi yang telah diberikan. Proses pemrograman akan menghasilkan suatu
produk yang disebut ―program‖. Program yang berbeda akan menyebabkan computer
memberikan hasil yang berbeda untuk suatu input yang sama. Contohnya, anggap
saja kita mempunyai 2 buah program java sebagai berikut :
a) Penjuamlahan class, yaitu suatu program yang akan menjumlahkan 2 buah input
yang diberikan kepadanya, dan mencetaknya kelayar monitor.
b) Perkalian class, yaitu suatu program yang akan mengalikan 2 buah input yang
diberikan kepadanya dan mencetaknya ke layer monitor. Misalnya kita
memasukkan pasangan 2 buah input {1,5} ke dalam masing-masing program.
Maka :
1. Penjumlahan.class akan mencetak nilai ―6‖ ke layer monitor.
2. Perkalian.class akan mencetak niali ―5‖ ke layer monitor.
2.5 Bahasa Pemrograman
Intruksi yang diberikan kepada computer pada dasarnya adalah inturuksi

berupa binarycode, yaitu rangkaian kode-kode biner (yang terdiri atas bilanganbilangan ―0‖ dan ―1‖ ) yang dapat ‖dimengerti‖oleh computer. Intruksi biner yang

8

dapat ―dimengerti‖ oleh computer adalah intruksi yang memiliki relasi dengan
operasi elementer yang dapat dilakukan oleh komputer, misalnya operasi
―menyimpan 1 byte ke alamat tertentu pada memeory‖, ―memutar hard-disk‖, dan
sebagainya. Setiap operasi pada computer memiliki kode biner tertentu.
Pada perkembangan awal system computer, para pemrogram (programmer)
computer melakukan pemrograman dengan cara memasukkan nilai-nilai biner ke
dalam memory computer. Nilai-nilai biner dimasukkan menggambarkan algoritma
dari operasi yang harus dilakukan oleh computer . cara ini memiliki beberapa
kesulitan antara lain :
a) Sebelum memasukkan kode biner yang benar, programmer harus melakukan
pengecekan terhadap pemetaan kode biner tersebut dengan operasi computer
yang diinginkan.
b) Ketika terjadi error, programmer harus melakukan kerja ekstra berupa
pengecekan kode salah dan pemetaan ulang terhadap hubungan antara kode biner
dengan operasi komputer.
Seiring dengan semakin berkembangnya arsitektur computer dan semakin

banyaknya operasi yang dapat dialkukan computer, metode penanaman instruksi
dengan menggunakan binary code mulai dirasakan tidak praktis, karena sulit
diterjemahkan ke dalam bahasa manusia. Oleh karena itu dibuatlah suatu perangkat
yang dapat mengkonversi intruksi dari intruksi yang dimengerti oleh bahasa manusia
manusia menjadi intruksi yang dimengerti oleh mesin/computer. Sebagai contoh :
1. Intruksi yang dimengerti oleh manusia :‖b = 1+ 4;‖
2. Intruksi yang dimengerti oleh komputer :‖…..1001101010101011100….‖

9

Dari sini mulai muncul istilah ‖sofware‖ yang pada intinya merupakan satu
perangkat yang berperan sebagai pengatur eksekusi. Bahasa pemrograman dapat
didefinisikan sebagai satu kumpulan pola-pola intruksi yang dapat dimengerti oleh
manusia, yang digunakan untuk menulis program / aplikasi / software untuk
menghasilkan operasi tertentu pada komputer.

2.6 Level Bahasa Pemrograman
Di sini muncul pemeringkatan (levelling) bahasa pemrograman. Bahasa
pemrograman yang lebih rendah merupakan bahasa yang cenderung lebih dimengerti
oleh komputer‖. Sedangkan bahsa yang lebih tinggi merupakan bahasa yang

‖cenderung dimengerti oleh manusia‖. Terdapat beberapa tingkat bahasa
pemrograman, antara lain :
a) Bahasa tingkat rendah (low-level language), misalnya bahasa mesin, dan
assembler.
b) Bahasa tingkat menengah (medin-level language), misalnya bahasa C/C++,
Foltran.
c) Bahasa tingakat tinggi (high-level lanuage), misalnya bahasa pascal.
d) Bahasa tingkat lebih tinggi (higher-level language), misalnya bahasa Java,
DotNet.
Ciri khas dari bahasa yang levelnya lebih rendah adalah kemampuan user
untuk memanipulasi operasi pada level hardware (misalnya, mengisi, mengedit, dan
menghapus data memory dan register) lebih tinggi. Sedangkan pada bahasa yang
levelnya lebih tinggi, kemampuan user untuk memanipulasi operasi pada level
hardware lebih rendah. Bahkan pada bahasa higher-level seperti Java, user benar-

10

benar tidak dapat melakukan manipulasi pada level hardware secara langsung, karena
operasi-operasi pada hardware (misalnya : pengalokasian memory, penghapusan data
pada memory) sudah dilakukan secara otomatis oleh Java Virtual Machine (JVM).

2.7 Siklus Hidup Perangkat Lunak
Pembuatan perangkat lunak / software dilakukan melalui tahapan-tahapan
yang membentuk suatu siklus / lifecyce. Siklus hidup ini dimulai dari 6 tahap, yaitu :
a) Analisis (analysis)
Langkah pertama yang dilakukan dalam analisis adalah proses investigasi
terhadap masalah yang akan di pecahkan melalui program yang akan dihasilkan.
Yaitu dengan mendefinisikan permasalahan yang akan dipecahkan dan
mengidentifikasi komponen / sub komponen yang akan menjadi komponen dasar.
b) Desain (Design)
Desain adalah proses implementasi hal-hal yang telah dianalisis dalam fase
analisis.
c) Pengembangan (Development)
Fase pengembangan merupakan rangkaian aktifitas pengguna cetak biru
komponen untuk membuat komponen-komponen actual. Dalam prakteknya,
dapat saja cetak biru komponen tersebut direalisasikan dengan membuat sub-sub
komponen.
d) Pengujian (Testing)
Pengujian adalah evaluasi atas komponen-komponen sampai kepada system
secara keseluruhan apakah memenuhi yang diinginkan ( sesuai dengan spesifikasi
yang di harapkan).

11

e) Implementasi (Implementation)
Implementasi adalah proses membuat produk dapat digunakan oleh user. Proses
ini terdiri atas beberapa langkah, antara lain :
1. Instalasi produk ke sistem / komputer user.
2. Pelatihan kepada user dengan tujuan user dapat menggunakan produk
tersebut.
3. Pemeliharaan (Maintenance)
Pemeliharaan terdiri atas proses-proses perbaikan terhadap masalah-masalah
yang terjadi pada produk. Pemeliharaan terhadap produk berupa :
1. Perbaikan bug
2. Re-install produk ke istem computer
3. Back-up data
4. Perbaikan pada komponen-komponen.
5. Akhir Siklus (End-Of-Life)
Fase ini mencakup proses-proses yang mengumpulkan kesimpualan dan
permintaan user terhadap produk yang telah berjalan di system. Hasil feedbackini
dapat menghasilkan keputusan untuk memodifikasi produk, sehingga dihasilkan
keputusan untuk memodifikasi produk sehingga dihasilkan versi-versi produk yang
lebih mutakhir dan lebih dapat memenuhi kebutuhan user.

2.8 Apa Yang dimaksud Dengan Teknologi Java
a. Sebuah Bahasa Pemrograman
Sebagai bahasa pemrograman, java dapat membuat seluruh bentuk aplikasi,
dekstop, web dan lainya. Sebagaimana dibuat dengan menggunakan bahasa

12

pemrograman konvensional yang lain. Java adalah bahasa pemrograman yang
berorientasi obyek (OOP) dan dapat dijalankan pada berbagai platfom sistem
operasi. Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi
dikembamgakan untuk berbagai sistem opersi dan bersifat open source.
b. Sebuah Development Environment
Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak
tools : compiler, intepreter, penyusun dokumtasi, paket kelas dan sebagainya.
c. Sebuah Aplikasi
Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang
dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment
(JRE).
d. Sebuah Deployment Environment
Terdapat dua komponen utama dari Deployment Environment. Yang pertama
adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas-kelas untuk
semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI
dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir
seluruh Web Browser komersial menyediakan interpreter dan runtime
environment dari teknologi Java.

2.9 Mengapa Mempelajari Java
Berdasarkan white resmi dari SUN, Java memiliki karakteristik sebagai
berikut :

13

a. Sederhana
Bahasa pemrograman Java menggunakan sintaks mirip C++ namun sintaks
pada Java telah banyak diperbaiki terutama menghilangakn pengguanaan pointer
yang rumit dan multipleinhritance. Java juga menggunakan automatic memory
allocation dan memory garbage collection.
b. Berorientasi obyek (obyek oriented)
Java menggunakan pemrograman berorientasi obyek yang membuat program
dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman
berorientasi obyek memodelkan dunia nyata ke dalam obyek dan melakukan
interaksi antar obyek-obyek tersebut.
c. Terdistribusi (Distributed)
Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan
adanya liberries netwoking yang terintegrasi pada Java.
d. Interpreted
Program Java dijalankan menggunakan interpreted yaitu Java Virtual
Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi
menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda.
e. Robust
Java menpunyai reliabilitas yang tinggi. Compiler pada Java mempunyai
kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa
pemrograman lain. Java mempunyai

runtime-Exception handing untuk

membantu mengatasi error pada pemrograman.

14

f. Secure
Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, java
memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak
digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut.
g. Architecture Neutral
Program Java merupakan platform independent. Program cukup mempunyai
satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual
Machine.
h. Portable
Source code maupun program Java dapat dengan mudah dibawa ke platform
yang berbeda-beda tanpa harus dikompilasi ulang.
i. Performance
Performance pada Java sering dikatakan kurang tinggi. Namun performance
Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan inprise,
Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT).
j. Multitheaded
Java mempunyai kemampuan untuk membuat suatu program yang dapat
melakukan beberapa pekerjaan secara sekaligus dan simultan.
k. Dynamic
Java didesain untuk dapat dijalankan pada lingkungan yang dinamis.
Perubahan pada suatu class dengan menambahkan properties ataupun method
dapat dilakukan tanpa menggangu program yang menggunakan class tersebut.

15

2.10 Sebagian Fitur dari JAVA
1. Java Virtual Machine (JVM)
JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai
aplikasi pada sebuah mesin nyata. JVM menyediakan spesifikasi hardware
danplatform dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat
aplikasi berbasis Java menjadi bebas dari platform maupun karena prose kompilasi
diselesaikan oleh JVM.
Aplikasi program Java diciptakan dengan file teks berekstensi .java. program
ini dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih.
Bytecode adalah serangkaian intruksi serupa instruksi kode mesin. Perbedaannya
adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi
ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di semua
platform sistem komputer dan sistem operasi.
2. Garbage Colletion
Program Java melakukan garbage collection yang berarti program tidak perlu
menghapus sendiri obyek-obyek yang tidak perlu digunakan lagi. Fasilitas ini
mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau
mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang
memungkinkan alokasi dinamis.
3. Code Security
Code Security terimplementasi pada Java melalui pengguanan Java Runtime
Environment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungi
sistem dari untrusted Java Code.

16

a) Pertama, class-loader menagani permutaan kelas Java ke runtime interpreter.
Proses ini menyediakan pengamanan denagn memisahkan kelas-kelas yang
bersal dari local disk dengan kelas-kelas yang diambil dari jaringan. Hal ini
membatasi aplikasi Trojan karena kelas-kelas yang berasal dari local disk
yang dimuat terlebih dahulu.
b) Kedua, bytecode veryfier membaca bytecode sebelum dijalankan dan
menjamin bytecode memenuhi aturan-aturan dasar bahasa Java.
c) Ketiga, manajemen keamanan menagani keamanan tingkat aplikasi dengan
mengendalikan apakah program berhak mengakses sunberdaya seperti sistem
file, port jaringan, proses eksternal dan sistem windowin.
2.11 Proses Kompilasi Java
Klik kanan pada Computer -> Properties -> Advance System Setting ->
Environment Variables

17

Gambar 1.1 Proses Kompilasi Java

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 adalahC:\jdk1.4 maka pada
Windows 98 Anda cukup menambahkan baris perintah SETPATH=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 ikon My Computer, pilih Properties. Kemudian pilih
tabAdvanced. 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

18

Anda. Untuk mencoba JDK, ketikkan perintah java dan javac pada shell prompt (atau
DOS Command Prompt). Jika perintah tersebut sudah dikenali maka program java
ataujavac 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:
1. Membuat source code program dengan editor teks apapun. Ingat, file tersebut
harus berekstensi .java dan case sensitive.
2. Mengkompile

source

code

dengan

perintah

javac.

Misalnya:

javac

HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class.
3. Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah
nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld.

2.12 Contoh membuat program
a. Source Code
Berikut kode untuk HelloWorld.java:
Public class HelloWorld
{
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:

19

Importjava.awt.Graphics
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.
b. Kompilasi
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

20

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.
c. Sintaks Program
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
penggantijava.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.

21

Kemudian kita menemukan baris pernyataan public static void main (String[]
args) danpublic 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 danprotect 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

22

listing ternyata memanggil sebuah metode lain yaitu metode println danpaint.
Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah metode diperlukan
tiga komponen yaitu:
a. Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics.
1. Nama metode yang ingin kita pakai. Dalam hal ini println dan paint.
2. 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,
pernyataang.drawString ("Apa Kabar Dunia?", 5, 25); berarti carilah objek g
kemudian panggil metodedrawString pada objek g dengan parameter "Apa Kabar
Dunia?‖, 5, 25);.
b. Eksekusi
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.


Coba Applet


23







CODE="HelloWorldApplet.class"

WIDTH=150

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.

2.13 Kelebihan
1. Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa
platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di
mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java
dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa
mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform
tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java
dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas
Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft
Windows, Linux,Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem
operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs
Java) untuk meninterpretasikan bytecode tersebut.
2. OOP (Object Oriented Programming – Pemrogram Berorientasi Objek) yang
artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah
satu bahasa pemrograman berbasis objek secara murni. Semua tipe data

24

diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan
pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi
kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan
terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa
pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti
komunikasi antara komputer sekalipun.
3. Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan
library/perpustakaan (kumpulan program program yang disertakan dalam
pemrograman java) yang sangat memudahkan dalam penggunaan oleh para
pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini
ditambah dengan keberadaan komunitas Java yang besar yang terus menerus
membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan
pembangunan aplikasi.
4. Bergaya C++, memiliki sintaks seperti bahasa pemrograman [C++] sehingga
menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java
sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java.
Universitas-universitas di Amerika juga mulai berpindah dengan mengajarkan
Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid
dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
5. Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan
memori sehingga para pemrogram tidak perlu melakukan pengaturan memori
secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

25

6. Tulis sekali, perbaiki di mana saja – Masih ada beberapa hal yang tidak
kompatibel antara platform satu dengan platform lain. UntukJ2SE, misalnya
SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
7. Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi
menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan
bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti namanama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft
.NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih
sulit disembunyikan dan mudah dibajak/direverse-engineer.
8. Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis
Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti
C/C++ dan Pascal (lebih spesifik lagi,Delphi dan Object Pascal). Biasanya ini
bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru
(karena trend memori terpasang makin murah), tetapi menjadi masalah bagi
mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4
tahun.
2.14 Contoh Kode Program Sederhana Dalam Java
Contoh program Halo dunia yang ditulis menggunakan bahasa pemrograman
Java adalah sebagai berikut:
Public class HaloDunia
{
public static void main(String[] args)
{
System.out.println("Haloa");
}
}

26

1. Tahap Kompilasi Java
a. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media
dalam bentuk berkas ‗.java‘.
b. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi
bentuk berkas ‗.class‘.
c. Muat. Pemuat kelas memuat bytecodes ke memori.
d. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem
keamanan Java.
e. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.
2. Integrated Development Environment
Banyak pihak telah membuat IDE (Integrated Development Environment –
Lingkungan Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli
2006) antara lain:
a) Dr. Java, program gratis yang dikembangkan oleh Universitas Rice,Amerika
Serikat
b) BlueJ, program gratis yang dikembangkan oleh Universitas Monash,Australia
c) NetBeans (open source- Common Development and Distribution License
(CDDL). NetBeans disponsori Sun Microsystems, dan versi terkininya
memilki Matisse, sebuah GUI Editor yang menurut pendapat umum
merupakan yang terbaik.
d) Eclipse JDT (open source- Eclipse Public License). Eclipse dibuat dari kerja
sama antara perusahaan-perusahaan anggota ‗Eclipse Foundation‘ (beserta
individu-individu lain). Banyak nama besar yang ikut dalam ‗Eclipse

27

Foundation‘, termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing
langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih
banyak dan bervariasi dibandingkan IDE lainnya.
 IntelliJ IDEA (commercial, free 30-day trial)
 Oracle JDeveloper (free)
 Xinox JCreator (ada versi berbayar maupun free)
e) JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan
memori lebih sedikit) dari kebanyakan IDE.

2.15 Fase-fase Pemrograman JAVA
Langkah pertama dalam pembuatan sebuah program berbasis Java adalah
menuliskan kode program pada text editor. Contoh text editor yang dapat digunakan
antara lain : notepad, vi, emacs dan lain sebagainya. Kode program yang dibuat
kemudian tersimpan dalam sebuah berkas berekstensi .java.Setelah membuat dan
menyimpan kode program, kompilasi file yang berisi kode program tersebut dengan
menggunakan Java compiler. Hasil dari adalah berupa berkas bytecode dengan
ekstensi.class. Berkas yang mengandung bytecode tersebut kemudian akan
dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan
platform yang digunakan. Berkas yang mengandung bytecode tersebut kemudian
akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis
dan platform yang digunakan.
Proses
Menulis kode program
Kompilasi program

Tool
Text editor
Java compiler

Menjalankan program

Java Interpreter

Hasil
Berkas berektensi .java
Berkas berekstensi .class(Java
Bytecode)
Program Output

BAB III
PENUTUP
3.1 Kesimpulan
Dari pembahasan dapat ditarik kesimpulan bahwa, Java dikenal sebagai
bahasa

pemrograman

yang

bersifat

strongly,

yang

berarti

diharuskan

mendeklarasikan tipe data dari semua variable yang apabila lupa atau salah dalam
mengikuti aturan pendeklarasian variable, maka akan terjadi error pada saat proses
kompilasi. Tipe data yang terdapat pada bahasa pemrograman Java pada umumnya
tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic,
dan lainnya, yakni terdiri dari integer, floating point, char, dan boolean. Aturan
penulisan variabel pada bahasa pemrograman Java juga tidak jauh berbeda dengan
bahasa pemrograman lain seperti C, C++, Pascal, Basic, dan lainnya, yakni harus
diawali dengan huruf/abjad, karakter mata uang, dan underscore ( _ ) dan terdiri dari
huruf/abjad, angka, dan underscore ( _ ), serta tidak boleh menggunakan kata-kata
yang dikenal oleh bahasa pemrograman Java (keyword), seperti byte, case, int, dan
lainnya. Sama halnya dengan semua bahasa pemrograman, Java juga menyediakan
operator-operator aritmatika untuk memanipulasi data numerik. Selain operator
aritmatika, Java juga mempunyai operator-operator lain, seperti operator increment
dan decrement, operator assignment (penugasan), operator relasi, operator logical,
operator bitwise (yang terdiri dari and, or, xor, dan complement), dan operator
precedence.

28

29

3.2 Saran
Dikarenakan cukup rumitnya bahasa pemrograman Java dan semakin
banyaknya pesaing yang berkompetisi di bidang pemrograman Java, maka saya
sebagai penulis menyarankan kepada pembaca (khususnya pemula), untuk sejak dini
mempelajari bahasa pemrograman tersebut.

REFERENSI

Khannedy Kurniawan Eko. 2011. ‗Membuat Aplikasi Sederhana Mengunakan
Java’. StripBundk; Bandung.
Bima Ifnu. 2011. ‗Java Desktop’. Permata Hati; Singapore.
Khannedy Kurniawan Eko. 2011. ‗Belajar Java Dasar’. StripBundk; Bandung.
Prasetyo Dwi Didik. 2007. ‘150 Rahasia Pemograman Java ’. PT Elex media
Komputindo; Jakarta.
Rahajo, Budi, dkk. 2010. Mudah Belajar java Edisi Revisi. Informatika; Bandung.
Utama Ginanjar. 2012. ‘Berfikir Objek: Cara Efektif Menguasai Java’. Kuliah
Berseri Ilmu Komputer; Surabaya.

30

31

DAFTAR ISI

KATA PENGANTAR ................................................................................................ i
DAFTAR ISI ............................................................................................................... ii
BAB I PENDAHULUAN ........................................................................................... 1
1.1

Latar Belakang .............................................................................................. 1

1.2

Maksud dan Tujuan ....................................................................................... 2

1.3

Rumusan Masalah ......................................................................................... 2

BAB II PEMBAHASAN ............................................................................................ 3
2.1

Pengertian Java .............................................................................................. 3

2.2

JDK (Java Development Kit) ........................................................................ 6

2.3

Java Runtime Environment ........................................................................... 6

2.4

Pengertian Pemrograman .............................................................................. 7

2.5

Bahasa Pemrograman .................................................................................... 7

2.6

Level Bahasa Pemrograman .......................................................................... 9

2.7

Siklus Hidup Perangkat Lunak .................................................................... 10

2.8

Apa Yang dimaksud Dengan Teknologi Java ............................................. 11

2.9

Mengapa Mempelajari Java ......................................................................... 12

2.10

Sebagian Fitur dari JAVA ........................................................................... 15

2.11

Proses Kompilasi Java ................................................................................. 16

2.12

Contoh membuat program ........................................................................... 18

2.13

Kelebihan ..................................................................................................... 23

2.14

Contoh Kode Program Sederhana Dalam Java ........................................... 25

2.15

Fase-fase Pemrograman JAVA ................................................................... 27

BAB III PENUTUP .................................................................................................. 28
3.1

Kesimpulan .................................................................................................. 28

3.2

Saran ............................................................................................................ 29

REFERENSI ............................................................................................................. 30

ii

32

KATA PENGANTAR

Puja dan syukur sepatutnya penulis haturkan ke hadirat Allah SWT, zat pencipta
dan maha kuasa atas segala hidayah dan karunia-Nya. Shalawat dan salam semoga
senantiasa tercurah ke haribaan Nabi Muhammad SAW. Alhamdulillahirabbil’alamin,
dengan izin Allah SWT penulis dapat menyelesaikan penulisan Tugas Kelompok yang
berjudul ―Kompilasi Pemrograman Java” sebagai salah satu persyaratan untuk
memperoleh gelar Sarjana pada Universitas Ubudiyah Indonesia, Banda Aceh.
Penulis menyadari sedikit keberhasilan ini tidak akan terwujud tanpa
keterlibatan semua pihak atau orang-orang terdekat sehingga selesailah penulisan
makalah ini. Untuk itu, Penulis berkesempatan ingin mengucapkan terima kasih yang
tulus kepada :
Bapak Muttaqin, S.T, M.Cs, selaku dosen mata kuliah Pemrograman
Berorientasi Objek atas bimbingan dan petunjuk dalam pembuatan makalah ini.
Penulis menyadari bahwa penyusunan makalah ini masih jauh dari
kesempurnaan, maka dengan segala kerendahan hati, Penulis mengharapkan saran
dan kritik yang bersifat membangun bagi perbaikan penulisan makalah ini. Akhirnya
kepada Allah SWT jugalah penulis berserah diri, semoga selalu dalam lindungan dan
hidayahnya-Nya. Aamiin
Banda Aceh, 01 Mei 2016
Penyusun,

Kelompok II
i

33

KOMPILASI
PEMROGRAMAN JAVA

Diajukan untuk melengkapi tugas dan memenuhi syarat - syarat
guna menyelesaikan Mata Kuliah Pemrograman Berorientasi Objek
Pada Universitas Ubudiyah Indonesia

Oleh Kelompok II
Reza Al Fajri

121020220008

Khairul Jamil

141020820002

Arni Kasra

141041020010

FAKULTAS ILMU KOMPUTER
UNIVERSITAS UBUDIYAH INDONESIA
BANDA ACEH
2016