0% menganggap dokumen ini bermanfaat (0 suara)
221 tayangan36 halaman

Makalah Java

Makalah ini membahas tentang bahasa pemrograman Java, mulai dari sejarahnya, pengertian Java, kelebihan dan kekurangannya, serta aplikasi yang dibuat menggunakan bahasa pemrograman Java.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
221 tayangan36 halaman

Makalah Java

Makalah ini membahas tentang bahasa pemrograman Java, mulai dari sejarahnya, pengertian Java, kelebihan dan kekurangannya, serta aplikasi yang dibuat menggunakan bahasa pemrograman Java.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 36

BAHASA PEMROGRAMAN JAVA

Di susun oleh:
Jati Muliawan Indroyono

(1102412057)

TEKNOLOGI PENDIDIKAN
FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS NEGERI SEMARANG
2013

PRAKATA
Puji syukur kehadirat Allah SWT karena hanya dengan rahmat dan hidayahnya,

akhirnya saya dapat menyelesaikan makalah ini dengan benar. Selain itu saya juga
berterima kasih kepada dosen pembimbing saya Septia Lutfi, S.Kom., M.Kom. yang telah

memberikan tugas dan membimbing saya, sehingga makalah ini dapat diselesaikan
sesuai dengan waktu yang telah ditentukan.

Makalah ini bermaksud untuk memberikan wawasan mengenai bahasa

pemrograman Java dari mulai sejarahnya sampai aplikasi-aplikasi java untuk mobile
phone. Dengan pembuatan makalah ini diharapkan pembaca dapat mengenal lebih

dalam dan menambah wawasan tentang bahasa pemrograman java, sehingga kita lebih
tahu mengenai perkembangan teknologi yang sudah sangat pesat ini.

Semarang, Oktober 2013


Penulis

BAB I
PENDAHULUAN
Latar belakang
Perkembangan teknologi dari tahun ketahun semakin cepat. Dari mulai

handphone, laptop, tablet, dan berbagai gadget lainnya selalu ada perubahan dan

semakin memanjakan pengguna. Dari tahun ketahun perkembangan teknologi


seakan membuat para pengguna menjadi ketergantungan dan dimanfaatkan
teknologi itu sendiri.

Saat ini, yang mempunyai lingkungan yang semakin luas dan banyak diminati,

juga dapat digunakan untuk menghasilkan uang adalah dunia pemrograman

komputer.

Dalam

dunia

pemrograman

komputer,

dikenal

banyak

bahasa

pemrograman, seperti C++, Pascal, Basic, Java, dan lain-lain. Di antara banyaknya
bahasa pemrograman, tim penyusun akan membahas seputar Java.

Rumusan Masalah
1. Bagaimana sejarah perkembangan Java?
2. Apa itu Java?

3. Bagaimana kelebihan dan kekurangan Java?

4. Apa saja variabel dan tipe data Java?


5. Apa itu String, Objek, dan Subrutin?
6. Apa saja istilah-istilah dalam Java?

7. Apa saja aplikasi dan game yang dibuat oleh java?

Tujuan
Tujuan pembuatan makalah ini yaitu agar pembaca dapat mengenal lebih

dalam seputar perkembangan teknologi bahasa pemrograman java dari mulai


sejarah sampai bagaimana pembuatan aplikasi java.

Manfaat
Saya berharap makalah ini dapat bermanfaat bagi para pembaca, yang tadinya

belum mengerti system operasi Android menjadi lebih mengerti apa itu system
operasi Android.

BAB II
PEMBAHASAN
Sejarah Java
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 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).

Pengertian Java
Java adalah bahasa

pemrograman yang

berbagai komputer termasuk telepon

genggam.

dapat

Bahasa

ini

dijalankan
awalnya

di

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 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/non-spesifik (general purpose), dan secara khusus


didisain untuk memanfaatkan dependensi implementasi seminimal mungkin.

Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan

di beberapa platformsistem 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 berbasis
web.

Java menurut definisi dari Sun adalah mana untuk sekumpulan teknologi

untuk membuat dan menjalankan perangkat lunak pada computer stand alone

ataupun pada lingkungan jaringan. Java 2 adalah generasi kedua dari java platform.

Kata berdiri di atas sebuah mesin interpreter yang diberi mana Java Virtual Machine
(JVM). JVM inilah yang akan membaca bytecode dalam file.class dari suatu program
sebagai representasi langsung dari program yang berisi bahasa mesin. Oleh karena

itu, bahasa java disebut sebagai bahasa pemrograman yang portable karena dapat
dijalankan pada berbagai sistem operasi, asalkan pada sistem operasi tersebut

terdapat JVM.

Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi, java

harus dikompilasi menjadi file bytecode. Untuk menjalankan bytecode tersebut

dibutuhkan JRE (Java Runtime Environment) yang memungkinkan pemakai untuk


menjalankan program Java, hanya menjalankan, tidak untuk membuat kode baru
lagi. JRE berisi JVM dan library Java yang digunakan. Java memiliki beberapa versi

library atau teknologi yang disebut juga sebagai edisi dari bahasa pemrograman

Java. Tiga edisi utama dari library tersebut adalah Micro, Standard, dan Enterprise.
J2ME (Java2 Micro Edition) 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
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 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. Teknologi Java memiliki tiga

komponen penting, yaitu:

Programming-language specification
Java2 adalah generasi kedua dari Java platform (generasi awalnya adalah

Java Development Kit). Java berdiri di atas sebuah mesin interpreter yang
diberi

nama

JVM.

JVM

inilah

yang

akan

membaca bytecode dalam

file .class dari suatu program sebagai representasi langsung program yang

berisi bahasa mesin. Oleh karena itu, bahasa Java disebut sebagai bahasa
pemrograman yang portable karena dapat dijalankan pada berbagai sistem

operasi, asalkan pada sistem operasi tersebut terdapat JVM. Platform Java

terdiri dari kumpulan library, JVM, kelas- kelasloader yang dipaket dalam

sebuah lingkungan rutin Java, dan sebuahcompiler, debuger, dan perangkat

lain yang dipaket dalam Java Development Kit (JDK).

Java2 adalah generasi yang sekarang sedang berkembang dari platform

Java. Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi
''.java''

harus

dikompilasi

menjadi

file bytecode.

Untuk

menjalankan bytecode tersebut dibutuhkan JRE ( Java Runtime Environment)

yang memungkinkan pemakai untuk menjalankan program Java, hanya


menjalankan, tidak untuk membuat kode baru lagi. JRE berisi JVM
dan libraryJava yang digunakan.

Platform Java memiliki tiga buah edisi yang berbeda, yaitu J2EE ( Java2

Enterprose Edition), J2ME ( Java2 Micro Edition) dan J2SE (Java2 Second

Edition). J2EE adalah kelompok dari beberapa API (Application Programming

Interface) dari Java dan teknologi selain Java. J2EE sering dianggap

sebagai middleware atau teknologi yang berjalan di server, namun sebenarnya

J2EE tidak hanya terbatas untuk itu. Faktanya J2EE juga mencakup teknologi
yang dapat digunakan di semua lapisan dari sebuah sistem informasi.

Implementasi J2EE menyediakan kelas dasar dan API dari Java yang
mendukung

pengembangan

dari

rutin

standar

untuk

aplikasi

klien

maupun server, termasuk aplikasi yang berjalan di web browser. J2SE adalah

lingkungan dasar dari Java, sedangkan J2ME merupakan edisilibrary yang


dirancang untuk digunakan pada device tertentu sepertipagers dan mobile
phone.
Java merupakan bahasa pemrogrman yang bersifat case sensitive yang

berarti penulisan menggunakan huruf besar ataupun huruf kecil pada kode

program dapat berarti lain. Misalnya penulisan "System" akan diartikan

berbeda dengan "system" oleh interpreter. Java tidak seperti C++, Java tidak
mendukung pemrograman prosedural, tapi mendukung pemrograman
berorientasi objek sehingga ada sintaks class pada kode programnya

Application-programming interface
Java API terdiri dari tiga bagian utama:

Java Standard Edition (SE), sebuah standar API untuk merancang

aplikasi desktop dan applets dengan bahasa dasar yang mendukung


grafis, M/K, keamanan, konektivitas basis data dan jaringan.

Java Enterprose Edition (EE), sebuah inisiatif API untuk merancang

aplikasi server dengan mendukung untuk basis data.

Java Macro Edition (ME), sebuah API untuk merancang aplikasi yang

jalan pada alat kecil seperti telepon genggam, komputer genggam dan
pager.

Virtual-machine specification
Java Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah

komputer abstrak. JVM terdiri dari sebuah kelas pemanggil dan sebuah

interpreter Java yang mengeksekusi kode arsitektur netral. Kelas pemanggil


memanggil file .class dari kedua program Java dan Java API untuk dieksekusi

oleh interpreter Java. Interpreter Java mungkin sebuah perangkat lunak


interpreter yang menterjemahkan satu kode byte pada satu waktu, atau
mungkin

sebuah

just-intime

(JIT)

kompiler

yang

menurunkanbytecodearsitektur netral kedalam bahasa mesin untuk host


computer.

Kelebihan dan Kekurangan Java


Slogan Java adalah Tulis sekali, jalankan di manapun. Sekarang ini Java

menjadi sebuah bahasa pemrograman yang populer dan dimanfaatkan secara luas

untuk pengembangan perangkat lunak. Kebanyakan perangkat lunak yang


menggunakan Java adalah ponsel feature dan ponsel pintar atau smartphone.

Kelebihan Java
Java mempunyai beberapa keunggulan dibandingkan dengan bahasa

pemrograman lainnya. Keunggulan bahasa pemrograman Java antara lain:

Berorientasi

pada

objek.

Java

adalah

bahasa

pemrograman

yang

berorientasi pada objek. Java membagi program menjadi objek-objek serta


memodelkan sifat dan tingkah laku masing-masing dalam menyelesaikan
suatu masalah.

Java bersifat multiplatform Java dirancang untuk mendukung aplikasi yang

dapat beroperasi di lingkungan jaringan berbeda. Untuk mengakomodasi

hal tersebut, Java compiler membangkitkan bytecodes (sebuah format yang


tidak tergantung pada arsitektur tertentu yang didesain untuk mengirimkan

kode ke banyak platform perangkat keras dan perangkat lunak secara


efisien). Java dapat dijalankan oleh banyak platform seperti Linux, Unix,
Windows, Solari, maupun Mac.

Java bersifat multithread Multithreading adalah kemampuan suatu program


komputer untuk mengerjakan beberapa proses dalam suatu waktu. Thread

dalam Java memiliki kemampuan untuk memanfaatkan kelebihan multi


prosessor apabila sistem operasi yang digunakan mendukung multi
prosessor.

Dapat didistribusi dengan mudah Java memiliki library rutin yang lengkap
untuk dirangkai pada protocol TCP/IP (seperti HTTP dan FTP) dengan
mudah. Kemampuan networking Java lebih kuat dan lebih mudah

digunakan. Java memudahkan tugas pemrograman jaringan yang sulit


seperti membuka dan mengakses sebuah soket koneksi. Java juga
mamudahkan pembuatan CGI (Common Gateway Interface).

Bersifat dinamis. Java dirancang untuk beradaptasi dengan lingkungan yang


sedang berkembang. Java bersifat dinamis dalam tahap linking. Class yang

ada dapat di link sebatas yang diperlukan, apabila diperlukan modul kode
yang baru dapat di link dari beberapa sumber, bahkan dari sumber dalam
jaringan Internet.

Mirip c++, Mempunyai sintaks yang mirip dengan bahasa pemrograman


c++ . Sehingga para pengguna c++ banyak yang hijrah menggunakan Java.

Perkembangan yang luas, Dari game sampai sistem operasi handphone

menggunakan program java . Misalnya Handphone Sonny Ericsson dan


Opera Mini 3 yang bertipe .jar ( Java Archive ).

Mempunyai pengumpulan sampah otomatis.

Kekurangan Java

Tulis sekali, jalankan di mana saja Masih ada beberapa hal yang tidak
kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya
SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.

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 nama-nama 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/direverseengineer.

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.

Variabel dan Tipe Data Java


Nama merupakan hal penting dalam teknik pemrograman. Dalam suatu

program, nama digunakan untuk menyebut sesuatu. Untuk menggunakan "sesuatu"


tersebut, programmer harus mengerti bagaimana aturan pemberian nama dan

aturan untuk menggunakan nama tersebut dalam programnya. Atau dengan kata
lain, programmer harus mengerti sintaks dan semantik dari nama.

Menurut aturan sintaks Java, nama merupakan rangkaian dari 1 atau lebih

karakter. Harus dimulai dengan huruf dan harus terdiri dari huruf, angka atau

karakter garis bawah '_'. Berikut ini adalah contoh nama yang diperbolehkan:
N
n
rate x15
quite_a_long_name
HelloWorld
Hurus
kecil
dan
huruf
besar
dianggap
berbeda,
sehingga HelloWorld, helloworld, HELLOWORLD,

dan heLLOwoRLD adalah

nama

yang berbeda-beda. Beberapa kata tertentu merupakan nama yang memiliki

kegunaan tertentu oleh Java, dan tidak dapat dipergunakan oleh programmer. Katakata ini disebut reserved words (kata-kata cadangan) misalnya:
class, public, static,if, else, while, dan lain-lain.

yang

Hal lain yang penting adalah compound names atau nama campuran, yaitu
merupakan

nama

biasa

yang

dihubungkan

dengan

Nama

System.out.println artinya

titik,

misalnya System.out.println. Idenya adalah "sesuatu" pada Java dapat terdiri


dari

"sesuatu"

yang

lain.

System

menampung out dan out menampung println. Kita sebut "sesuatu" sebagai identifier
(pengenal) tidak peduli apakah ia berupa nama tunggal atau campuran.

Program melakukan manipulasi data yang disimpan dalam memori. Dalam

bahasa mesin, data hanya bisa diambil dengan menyebut alamatnya di memori.

Dalam bahasa pemrograman tingkat tinggi seperti Java, nama bisa digunakan untuk
mengganti alamat data tersebut di memori. Tugas komputer adalah untuk melacak
di mana data tersebut di simpan, sedangkan programmer menggunakan nama untuk

memerintahkan komputer mengambil data tersebut dari memori. Nama yang


digunakan seperti ini disebut variable.

Variabel sebenarnya berarti lebih kompleks. Variabel bukan isi dari data, tapi

lokasi di memori yang menyimpan data tersebut. Variabel bisa diibaratkan sebagai
kotak penyimpanan data, bukan isi kotaknya. Karena data di dalam kotak bisa
berubah, variabel hanya dapat dipercaya pada satu saat saja, walaupun tempatnya
selalu sama.

Dalam bahasa Java, satu-satunya cara untuk memasukkan data ke dalam

variabel adalah dengan menggunakan assignment statement, atau pernyataan

pemberian nilai. Pernyataan ini berbentuk:


variable = ekspresi;

Di mana ekspresi menyatakan apapun yang berhubungan dengan nilai suatu

data. Ketika komputer menjalankan instruksi ini, komputer akan menghitung dan
menyimpan hasilnya ke dalam variabel. Contoh:
kecepatan = 40;

Variable dalam pernyataan di atas adalah kecepatan dan ekspresinya adalah

angka 40. Komputer menghitung pernyataan ini dan menyimpan 40 ke dalam


variabel kecepatan, dan mengganti apapun yang telah disimpan sebelumnya.

Sekarang misalnya kita ingin melakukan perhitungan yang lebih kompleks:


jarak = kecepatan * waktu
Di sini, * merupakan operasi perkalian. Komputer mengambil data yang
disimpan

dalam

variabel kecepatan dan waktu,

melakukan

perkalian,

dan

menyimpan hasilnya dalam jarak.

Variabel dalam bahasa Java didesign untuk menyimpan hanya 1 jenis tipe

data. Kompiler akan menampilkan kesalahan sintax apabila variabel ini dicoba untuk
diberi tipe data jenis lain. Oleh karena itu Java disebut bahasa pemrograman bertipe
kuat ataustrongly typed language.

Ada 8 tipe data primitif dalam bahasa Java.

Jenis
Data

Deskripsi

Ukuran

Minimum

Maksimum

Boolean

Hanya bisa berisi


1-bit
benar atau salah

Char

Karakter Unicode

16-bit

Byte

Bilangan bulat

8-bit

-127

128

short

Bilangan bulat

16-bit

-32768

32767

Int

Bilangan bulat

32-bit

-2147483648

2147483647

Long

Bilangan bulat

64-bit

-9223372036854775808

9223372036854775807

Float

Bilangan riil

32-bit

1.40129846432481707e45

3.40282346638528860e+38

double

Bilangan riil

64-bit

4.94065645841246544e324

1.79769313486231570e+308

Suatu variabel baru dapat digunakan apabila telah dideklarasikan. Pernyataan

deklarasi variabel digunakan untuk mendeklarasikan satu atau lebih variabel dan

memberinya nama. Ketika komputer mengeksekusi deklarasi variabel, komputer

akan menyediakan ruangan di memori kemudian menyimpan alamat ini sesuai

dengan nama variabel yang diberikan. Deklarasi variable berbentuk seperti :


nama_tipe nama_variabel;
Nama_variabel dapat berupa sebuah nama variabel atau beberapa nama
sekaligus yang dipisah dengan koma. Gaya pemrograman yang baik yaitu dengan

mendeklarasikan satu variabel dalam satu pernyataan, kecuali variabel tersebut


berhubungan erat satu sama lain. Misalnya:
float num;
String nama;
String nama;
boolean bol;
int x,y;

Atau pendeklarasian variabel bisa juga dilakukan sekaligus dengan

pemberian nilainya, seperti pada contoh berikut:


int num = 1000;
char ch = 'e';
float angka = -1.504;
boolean bol = true;

Jenis-jenis Variabel
Java memiliki beberapa jenis variabel yang dapat dikelompokkan sebagai berikut:

Instance Variables (tidak statis). Dalam bahasa pemrograman berorientasi


objek, objek menyimpan variabel yang tidak dideklarasikan dengan kata

kunci static dalam kategori non-statis, atau dapat berubah-ubah. Suatu kelas

dapat dijelmakan ke dalam beberapa objek. Nilai yang terkandung dalam


variabel tak-statis ini berbeda untuk setiap objeknya.

Class Variables (statis). Variabel ini merupakan bagian integral dari suatu

kelas, dan tidak ada satu objek pun yang dapat menyatakan kepemilikan atas
variabel ini. Variabel yang dideklarasikan sebagai statis digunakan bersama
oleh semua objek. Variabel ini lebih bersifat global yang nilainya sama untuk
setiap objek pada kelas yang bersangkutan.

Local Variables. Variabel ini didefinisikan di dalam suatu metoda (method)


atau dalam suatu prosedur. Variabel ini bersifat lokal karena hanya dapat
diakses oleh metoda atau prosedur tersebut.

Parameter. Paramater atau argumen adalah variabel yang digunakan pada


saat suatu metoda atau prosedur dipanggil. Parameter berguna untuk

memberikan nilai awal untuk diteruskan (pass) ke dalam suatu prosedur atau
metoda.

Literal
Pada bagian ini akan dijelaskan tentang literal, yaitu rangkaian kata

atau huruf yang menyatakan suatu nilai. Misalnya


int angka = 10;

Pada pernyataan di atas, yang dinamakan literal adalah 10, karena 10

berarti bilangan bulat atau integer. Pada bahasa pemrograman java, terdapat
beberapa jenis literal yang melambangkan bilangan bulat, riil, kalimat, atau
boolean.

Literal Bilangan Bulat


Bilangan bulat dapat dilambangkan dalam beberapa bentuk. Bilangan

bulat biasa dilambangkan dengan deretan angka yang dimulai dengan angka
yang bukan nol.
int angka = -10;

Bilangan oktal adalah bilangan bulat berbasis 8, yang berarti hanya

dapat terdiri dari angka-angka 0 hingga 7. Bilangan oktal ditulis seperti


bilangan bulat biasa dimulai dengan 0.
// 22 basis delapan atau 18 dalam desimal
int angka = 022;
Bilangan

heksadesimal adalah

bilangan

berbasis

16.

Bilangan

heksadesimal dilambangkan dengan 0 hingga 9 dan a hingga f dan dimulai


dengan 0x.
// 2a heksadesimal atau 42 dalam desimal
int angka = 0x2a;

Long integer. Seperti dijelaskan pada bab terdahulu long integer

membutuhkan memori sebesar 64bit, yang artinya kita dapat menyimpan

bilangan bulat hingga 2 ^ 64. Untuk merepresentasikan long integer,


tambahkan huruf L pada akhir bilangan.
INT ANGKA = 22L;

Literal karakter

Kita dapat melambangkan suatu karakter dengan tanda petik tunggal

misalnya a atau 3 atau =. Suatu karakter dapat juga dilambangkan dengan


kode ascii nya. Caranya dengan memulainya dengan \u00 (garis miring
terbalik) kemudian diikuti dengan kode ascii nya dalam bentuk heksadesimal.
// huruf 'a' dalam ascii
Char huruf = '\u0041';

Selain itu ada beberapa karakter lain selain alfabet yang dapat

dilambangkan dengan escape sequence. Berikut ini beberapa contohnya.


\n = tombol enter atau baris baru.
\r = carriage return.
\t = tombol tab.
\b = tombol backspace.
\\ = karakter \
\ = karakter
\ = karakter

Literal Boolean
Nilai true dan false pada java merupakan literal boolean. Suatu variabel

bertipe boolean hanya dapat memiliki nilai true atau false.


boolean ok = true;

Ingat bahwa boolean true atau false TIDAK menggunakan tanda petik

tunggal seperti ekspresi pada karakter.

Literal Bilangan Riil


Bilangan riil, misalnya -0.00127 atau 415.842, pada java dapat disimpan

baik sebagai float atau double. Bilangan real dapat direpresentasikan dalam
bentuk desimal biasa, pecahan, atau eksponen (dilambangkan dengan e atau
E).
Tipe

Ukuran
bytes

bit

Rentang

Presisi (jumlah digit)

float

32

+/- 3.4 x 1038

6-7

double

64

+/- 1.8 x 10308

15

Imbuhan akhir d atau D dan f atau F dapat pula ditambahkan untuk

menentukan tipenya secara eksplisit. Berikut beberapa contohnya.


double d = 3.27E+32;
float f = 4f;
float pi = 3.14159;

Literal String
String merupakan untaian huruf dan angka yang tersusun menjadi satu

kalimat. Dalam bahasa java, string bukan merupakan tipe primitif, tetapi
merupakan kelas. String pada java tidak disimpan dalam bentuk array seperti
pada

C.

Java

menyediakan

beberapa

metoda

untuk

melakukan

penggabungan, modifikasi, atau perbandingan. String ditulis di antara dua


tanda petik ganda seperti contoh berikut.
String salam = "Selamat Datang";
String juga dapat mengandung karakter spesial seperti dibahas pada
literal karakter. Misalnya
String hallo = "Selamat Datang \"Bapak Presiden\"";
System.out.println("Hallo Bambang\nSelamat pagi,\nSemoga
hari anda cerah\n";
Berikut ini adalah beberapa contoh lainnya.
// Contoh string kosong
String teks = "";
// Contoh string berisi "
teks = "\"";
// String dapat juga dipisah menjadi beberapa baris
teks = "ini baris pertama " +
"dan ini lanjutannya."

Literal Null

Literal terakhir pada bahasa java adalah literal null. Null merupakan

kondisi di mana suatu objek tidak diberi alokasi memori. Pada saat suatu

objek dideklarasikan, komputer akan mengalokasikan memori untuk objek

tersebut. Apabila objek tersebut telah selesai dipergunakan, kita dapat


melepas lokasi memori yang digunakan oleh objek tersebut sehingga memori
itu dapat digunakan oleh objek lain. Berikut ini adalah contohnya
obj = null;

Literal null berfungsi memberi tahu garbage collector (pemulung

memori) bahwa objek tersebut tidak lagi terpakai. Kemudian memori akan
dilepaskan agar dapat digunakan oleh objek lain.

String, Objek, dan Subrutin


Bagian sebelumnya memperkenalkan 8 jenis tipe data primitif dan tipe

data String. Perbedaan mendasar antara tipe primitif dan String adalah : nilai dari
tipe String berupa objek.

Subrutin adalah kumpulan instruksi program yang digabungkan sehingga

memiliki fungsi tertentu. Dalam bahasa Java, setiap subrutin termasuk di dalam
bagian suatu kelas atau objek. Java menyediakan kelas standar yang siap digunakan.

Nilai tipe String adalah objek yang memiliki kumpulan subrutin yang dapat
digunakan untuk memanipulasi String tersebut. Kita bisa memanggil subrutin

tersebut tanpa harus mengerti bagaimana subrutin tersebut bekerja. Sebenarnya ini
adalah tujuan subrutin, yaitu sekumpulan perintah yang memiliki fungsi tertentu
tanpa harus mengetahui secara detail apa yang terjadi di dalam.

Kelas terdiri dari variabel dan subrutin yang disimpan di dalamnya. Variabel

dan subrutin ini disebut static member (anggota statis). Contohnya adalah pada
program SelamatDatang,

kelas SelamatDatang memiliki

anggota main() yang

merupakan anggota statis kelas itu. Anggota yang berupa static member diberi
imbuhan static, seperti pada main.

Fungsi kelas yang lain adalah untuk mendeskripsikan suatu objek. Kelas di sini

berfungsi seperti tipe data. Nilai yang disimpan dalam tipe data itu adalah objek.

Misalnya String sebenarnya merupakan nama kelas yang disediakan bahasa

Java. String juga berupa tipe data dan kalimat seperti "Selamat Datang!" adalah isi
dari tipe data String.

Kegunaan kelas baik sebagai gabungan subrutin ataupun sebagai objek

sering membingungkan. Misalnya kelas String juga menyimpan beberapa subrutin

statik selain juga sebagai tipe data. Contoh kelas standar lainnya adalah Math yang
berisi kumpulan subrutin statik untuk melakukan berbagai perhitungan matematis.

Kelas Sebagai Tipe Data


Mari mulai dengan melihat kembali subrutin System.out.print.

Subrutin

ini

digunakan

untuk

menampilkan

Misalnya System.out.print("Selamat
Selamat datang!

pesan

kepada

user.

datang!") menampilkan

pesan

System merupakan salah satu kelas standar Java. Salah satu anggotanya
bernama out. Karena variable ini berada di dalam kelas System, kita harus
memanggilnya

dengan

nama

lengkapnya

yaitu System.out.

Variabel System.out merupakan suatu objek, dan objek itu memiliki subrutin
yang bernama print. Pengenal campuran System.out.print mengacu pada
subrutin print di dalam objek out dalam kelas System.
Untuk melihat dari sisi lain, sebetulnya System.out merupakan objek
dari kelas PrintStream. PrintStream adalah salah satu kelas standar Java.
Objek dengan tipe PrintStream adalah objek tempat informasi bisa dicetak.
Setiap

objek

yang

bertipe

PrintStream memiliki

subrutin

bernama print yang bertugas untuk mencetak sesuatu ke medium tersebut.


Dalam hal ini System.out adalah tujuan tempat print dilakukan. Objek lain
yang bertipe PrintStream bisa mengirim informasi ke tujuan lain, misalnya file
atau network atau ke komputer lain.

Ini adalah esensi dari pemrograman berorientasi objek, di mana beberapa

hal yang memiliki kesamaan - dalam hal PrintStream sama-sama sebagai


tempat tujuan print - dapat digunakan dengan cara yang sama, yaitu
memanggil subrutin print.

Karena nama variabel, nama kelas, dan nama subrutin berbentuk hampir

sama, ada baiknya untuk membedakannya sehingga di kemudian hari program


dapat dibaca dengan jelas. Kelas standar Java menggunakan nama yang selalu

dimulai dengan huruf besar, sedangkan nama variabel dimulai dengan huruf

kecil. Ini bukan sintaks Java, tetapi lebih seperti konvensi. Setiap orang bebas
menggunakan

konvensinya

masing-masing,

tetapi

apabila

pemrograman

dilakukan secara bersama-sama, seperti pada open source programming,

konvensi yang sama akan sangat memudahkan orang lain membaca dan menguji

program yang kita buat. Nama subrutin juga dimulai dengan huruf kecil, sama

dengan nama variabel. Tetapi subrutin harus diikuti dengan tanda buka kurung
sehingga masih mudah dibedakan dengan nama variabel.

Kelas Sebagai Kumpulan Subrutin dan Variabel Statik


Selain sebagai tipe data, kelas System juga memiliki subrutin statik yang
bernama exit.

Memanggil System.exit akan

menghentikan

jalannya

program, dan digunakan apabila karena suatu hal (misalnya program telah selesai
atau

adanya

error)

program

harus

dihentikan.

Subrutin exit menerima

parameter bilangan bulat, misalnya System.exit(0) atau System.exit(1),

untuk memberitahu kepada sistem operasi alasan kenapa program dihentikan.

Status 0 berarti program berhenti normal tanpa adanya error, sedangkan status

lain berarti ada sesuatu yang salah yang terjadi di tengah eksekusi program
tersebut.

Setiap subrutin melakukan fungsi tertentu. Beberapa di antaranya

melakukan perhitungan lalu melaporkan hasil perhitungannya. Ada juga yang


berfungsi untuk mengambil data dari tempat tertentu dan melaporkan data yang

didapat. Subrutin jenis ini disebut function (fungsi). Fungsi adalah subrutin yang
mengembalikan (return) suatu nilai. Nilai yang dikembalikan akan digunakan
lebih lanjut dalam program.

Sebagai contoh adalah fungsi untuk menghitung akar kuadrat dari suatu

bilangan. Java memiliki fungsi seperti itu yang disebut Math.sqrt. Fungsi ini

merupakan anggota statik dari kelas yang bernama Math. Jika x adalah suatu
bilangan, makan

Math.sqrt(x) menghitung akar kuadrat dari x dan

mengembalikan hasil perhitungannya. Karena Math.sqrt(x) mengembalikan

suatu bilangan, kita tidak bisa memanggil fungsi ini seperti


Math.sqrt(x); // Tidak masuk akal!
Kita tentunya ingin menggunakan hasilnya untuk instruksi selanjutnya,
misalnya menuliskan hasilnya di layar seperti
System.out.print( Math.sqrt(x) );

//

Menampilkan

akar

kuadrat x di layar.atau menyimpan hasilnya pada variabel lain, seperti


panjangDiagonal = Math.sqrt(x);

Kelas Math

Kelas Math memiliki banyak fungsi statik. Beberapa yang penting di

antaranya:

Math.abs(x), menghitung nilai mutlak (absolut) dari x. Nilai mutlak

bilangan negatif adalah bilangan positif, dan bilangan positif tetap


bilangan positif.

Fungsi

trigonometri Math.sin(x), Math.cos(x),

and Math.tan(x). (Untuk semua fungsi trigonometri, sudut memiliki


satuan radian, bukan derajat)

Fungsi trigonometri inverse, yang mencari sudut dari suatu nilai


trigonometric, kebalikan dari fungsi trigonometri, seperti arcus sin,
arcus

cos,

dan

arcus

tangen. Math.asin(x), Math.acos(x),

and Math.atan(x).

Math.exp(x), menghitung pangkat dari bilangan natural e, atau ex.


Dan logaritma natural log e x atau ln x bisa dihitung dengan
menggunakan fungsi Math.log(x).

Math.pow(x,y) menghitung xy atau x pangkat y

Math.floor(x) menghitung pembulatan ke bawah dari suatu


bilangan riil, misalnya 3.84 akan dibulatkan ke bawah menjadi 3.0

Math.random() memilih bilangan acak di antara 0.0 dan 1.0.

Komputer memiliki algoritma perhitungan tertentu yang hasilnya

bilangan acak (meskipun bulan bilangan yang betul-betul acak, tetapi


cukup untuk kebanyakan fungsi)

Paremeter (nilai di dalam kurung) fungsi-fungsi di atas bisa bertipe

numerik apa saja (misalnya double, int, dll), tetapi keluarannya bertipe double,
kecuali abs(x) yang tipe keluarannya sama dengan tipe parameternya.

Math.random() tidak memiliki parameter, tetapi tanda kurungnya harus

tetap ditulis untuk membedakan fungsi dan variabel. Contoh fungsi lain yang
tidak

memiliki

parameter

adalah System.currentTimeMillis() yang

berguna untuk mengambil waktu saat ini dalam satuan milidetik, dihitung sejak 1
Januri 1970 waktu GMT. Satu milidetik sama dengan 1 per 1000 detik.
Keluarannya bertipe long.

Untuk menghitung waktu yang diperlukan untuk menjalankan suatu

perintah,

jalankan

fungsi System.currentTimeMillis()sebelum

dan

sesudah suatu instruksi dijalankan. Perbedaannya adalah waktu yang diperlukan


untuk menjalankan suatu instruksi.

Kelas String
Nilai suatu String adalah objek. Objek ini berisi rangkaian huruf yang
membentuk string. Objek tersebut juga berisi subrutin. Misalnya length adalah

fungsi yang menghitung panjang suatu string, atau jumlah karakter dalam suatu
string. Misalnya string str yang dideklarasikan sebagai berikut :
String str;
str = "Hari ini cerah sekali!"
Untuk

menghitung

jumlah

fungsi str.length() yang


membutuhkan

karakter

keluarannya

parameter.

dalam

string str,

bertipe int.

Fungsi

panggil
ini

Fungsi length merupakan

tidak

anggota

kelas String dan dapat digunakan oleh semua data yang bertipe String. Dan

juga bisa digunakan oleh literal string, misalnya program berikut menghitung
jumlah karakter dalam string "Indonesia Raya" :
System.out.print("Jumlah karakter dalam \"Indonesia Raya\"
adalah ");
System.out.print("Indonesia Raya".length());
System.out.println(" karakter");
Kelas String memiliki beberapa fungsi di antaranya :

s1.equals(s2) adalah fungsi yang mengembalikan nilai boolean


(true atau false). Fungsi ini akan menghasilkan true jika s2 sama

dengan s1, dan salah jika tidak. Kesamaan yang diuji adalah kesamaan
persis baik kapitalnya maupun urutan huruf-hurufnya.

s1.equalsIgnoreCase(s2) juga menghasilkan nilai boolean yang


menguji

apakah

string

dengan tidakmembandingkan

s2

sama

dengan

"Kucing".equalsIgnoreCase("kucing") menghasilkan true.

s1

kapitalnya.

s1.length(). Seperti diulas sebelumnya, fungsi ini menghitung


jumlah karakter dalam string s1.

s1.charAt(N). N adalah integer (bilangan bulat). Fungsi ini

mengembalikan karakter ke-N dari string s1. Karakter pertama dihitung


sebagai

posisi

ke-0. s1.charAt(0) berarti

mengambil

karakter

pertama, sedangkan s1.charAt(1) berarti mengambil karakter ke-2,

dan seterusnya. Karakter terakhir memiliki indeks s1.length() - 1.

Fungsi ini akan mengeluarkan pesan kesalahan apabila N bernilai


negatif atau lebih besar dari s1.length() - 1.

s1.substring(N,M), di mana N dan M bilangan bulat. Fungsi ini

mengambil potongan string antara karakter ke-N hingga karakter M-1.


Catatan bahwa karakter ke-M tidak ikut diambil. Misalnya, "jalan
layang".substring(1,4) menghasilkan "ala".

s1.indexOf(s2) mengembalikan nilai integer. Fungsi ini mencari


string s2 di dalam string s1, dan apabila ditemukan mengembalikan

posisi awal s2 di dalam s1. Jika tidak ditemukan, fungsi ini akan

mengembalikan -1. Fungsi ini bisa juga digunakan untuk mencari string
s2 dalam s1 setelah posisi ke-N dalam string s1. Misalnya, "kelapa
muda".indexOf("a")menghasilkan

3,

sedangkan "kelapa

muda".indexOf("a",6) menghasilkan 10.

s1.compareTo(s2) membandingkan s2 dan s1. Jika s1 dan s2 sama,

hasilnya 0. Jika s1 kurang dari s2, hasilnya bilangan negatif , dan jika s1
lebih besar dari s2, hasilnya bilangan positif. "Kurang dari" atau "lebih
dari" mengacu pada urutannya dalam abjad jika keduanya huruf kecil

atau keduanya huruf besar. Jika kapitalnya berbeda, perbandingannya


bergantung pada nilai ASCII-nya.

s1.toUpperCase() adalah fungsi untuk mengubah seluruh huruf


dalam s1 menjadi huruf besar.

s1.toLowerCase() berfungsi untuk mengubah huruf dalam s1


menjadi hurug kecil.

s1.trim() adalah berfungsi menghapus karakter yang tak bisa

dicetak, misalnya spasi, baris baru, enter, yang ada sebelum atau
sesudah

suatu

kalimat.

Misalnya "

selamat

pagi

bu

".trim() menghasilkan "selamat pagi bu".


Untuk s1.toUpperCase(), s1.toLowerCase(), s1.trim() nilai

s1

tidak berubah. Fungsi ini melakukan perhitungan kemudian mengembalikan


string baru hasil perhitungan tersebut.

Kita bisa juga menggunakan tanda + menyambung 2 string. Misalnya

"mata" + "hari" menjadi "matahari". Nilai yang dapat disambungkan bukan hanya

string dan string, tetapi juga string dan angka, misalnya "jalan" + 2 menjadi
"jalan2".

Istilah-istilah Java
Pernyataan Switch
Pernyataan

Switch

satu-satunya

jenis

pernyataan

yang

mengimplementasikan java multiway percabangan. Ketika pernyataan switch

dievaluasi, salah satu jumlah cabang pilihan yang berbeda untuk menjalankan

cabang ditentukan dengan mengendalikan ekspresi yang ditutupi dalam kisaran


waktu setelah kata kunci mengkonfirmasi switch ekspresi harus mengevaluasi ke

char, int, pendek, atau byte. Setiap pernyataan cabang dalam sebuah pernyataan
switch diawali dengan kata cadangan, diikuti oleh sebuah konstanta yang disebut
label kasus, diikuti oleh titik dua, dan kemudian urutan laporan. Setiap kasus

harus diberi label dengan jenis kasus yang sama perlu mengendalikan ekspresi.
Label tidak terdaftar atau span interval lengkap. merupakan edisi library yang

dirancang untuk digunakan pada device tertententu seperti pagers dan mobile

phone. J2SE (Java2 Standard Edition) merupakan edisi library yang dirancang

untuk membuat aplikasi desktop atau applet pada web browser. J2EE (Java2
Enterprise Edition) merupakan edisi librari Java yang dirancang untuk membuat

sebuah aplikasi enterprise yang memerlukan antarmuka dengan sumber data


(data source) atau dapat pula dikatakan bahwa J2EE adalah kelompok yang lebih

besar dengan J2SE di dalamnya.

Operator bersyarat
Operator Bersyarat adalah varian notational dari beberapa bentuk

pernyataan istilah. kata lain disebut juga operator ternary atau aritmetika , contoh
if (n1 > n2) max = n1;

else
vs.

max = n2;

max = (n1 > n2) ? n1 : n2;

Ekspresi di sebelah kanan operator penugasan adalah operator ekspresi

dari ekspresi kondisional Boolean. Jika benar, maka ekspresi dievaluasi ke nilai
ungkapan pertama (n1), selain untuk mengevaluasi nilai dari ekspresi kedua (n2)

Ekspresi Boolean
Ekspresi Boolean adalah ekspresi benar atau salah. ekspresi Boolean yang

paling sederhana untuk membandingkan nilai dari dua ekspresi <== myScore

yourScore waktu batas. Catatan bahwa Java menggunakan dua tanda sama

dengan (==) untuk pengujian kesetaraan: A sama satu sign (=) digunakan hanya
untuk tugas Ekspresi. Boolean yang ditutupi dalam kurung tersebut tidak

diperlukan, kecuali ia digunakan dalam pernyataan jika

Perangkap string
Kesetaraan operator perbandingan (==) dengan benar dapat menguji dua

nilai dari tipe primitive. Namun ketika diterapkan pada dua benda sebagai obyek

uji String kelas (==) untuk melihat jika mereka disimpan dalam lokasi memori
yang sama, bukan apakah atau tidak mereka memiliki. Untuk sedikit nilai tes yang

sama dua tali untuk melihat apakah mereka memiliki nilai yang sama,
menggunakan metode yang serupa dengan, atau equalsIgnoreCase.
string1.equals(string2)

string1.equalsIgnoreCase(string2)

Leksikografis dan urutan abjad


Leksikografis server sama dengan ASCII server, termasuk huruf, angka, dan

huruf besar lainnya. Semua karakter dalam urutan abjad, dan huruf kecil semua

dalam urutan abjad, tetapi huruf kapital semua datang sebelum huruf kecil. Jika
s1 dan s2 adalah dua variabel jenis String yang telah diberi nilai String, kemudian

s1.compareTo (s2) return angka negatif jika datang sebelum s1 s2 dalam rangka

leksikografis, kembali nol jika kedua string sama, dan kembali angka positif jika s1
s2. Ketika datang sebelum melakukan perbandingan alfabet dari string (bukan

perbandingan leksikografis), yang terdiri atas campuran huruf kecil dan huruf
besar, gunakan metode tidak compareToIgnoreCase

Membuat Ekspresi Boolean

Ketika dua ekspresi yang dikombinasikan dengan menggunakan Boolean

"dan" (& &) operator, seluruh ekspresi benar memberikan dua ekspresi benar jika

ekspresi salah. Ketika dua ekspresi yang dikombinasikan dengan menggunakan


Boolean "atau" (| |) operator, yang seluruh ekspresi benar selama satu ekspresi
yang benar dari istilah ini adalah salah hanya jika kedua ekspresi palsu. Setiap

ekspresi Boolean dapat menegasikan menggunakan! Tempat operator ekspresi

dalam tanda kurung dan tempat! Tidak seperti operator di depan notasi

matematika, string dari pertidaksamaan harus bergabung oleh & Gunakan (min
<hasil) & & (hasil <max) daripada min <hasil <maks.

Evaluasi Ekspresi Boolean


Meskipun ekspresi Boolean yang digunakan untuk mengontrol cabang

dan laporan loop, ekspresi Boolean dapat eksis secara independen atau variable.
Boolean dapat diberikan nilai ekspresi Boolean menggunakan. Boolean

Expression tugas laporan dapat dievaluasi dengan cara yang sama bahwa
ekspresi aritmatika dievaluasi. Satu-satunya perbedaan adalah bahwa ekspresi

aritmatika menghasilkan sejumlah sebagai hasilnya, sementara ekspresi Boolean


menghasilkan baik benar atau salah sebagai akibatnya mereka
boolean madeIt = (time < limit) && (limit < max);

Truth Tables, Hubungan singkat dan Evaluasi lengkap


Java dapat mengambil jalan pintas ketika mengevaluasi bagian pertama

dari ekspresi Boolean hasil dari bagian kedua bahwa evaluasi tidak dapat
mengubah disebut sirkuit evaluasi singkat atau evaluasi malas. misalnya, ketika

mengevaluasi dua subexpressions Boolean bergabung oleh & &, jika yang
pertama subexpression mengevaluasi ke false, maka ekspresi akan mengevaluasi

seluruh ke false, tidak peduli nilai subexpression. kedua cara itu, ketika
mengevaluasi dua subexpressions bergabung dengan Boolean | |, jika
subexpression pertama mengevaluasi true, maka ekspresi akan mengevaluasi
seluruh menjadi true.

Ada saat-saat ketika menggunakan evaluasi hubung singkat dapat

mencegah kesalahan runtime. contoh berikut, jika jumlah anak-anak adalah sama
dengan nol, maka subexpression kedua tidak akan dievaluasi, sehingga
mencegah membagi dengan nol kesalahan.

Perhatikan bahwa urutan terbalik dari subexpressions tidak akan

mencegah hal ini

if ((kids !=0) && ((toys/kids) >=2)) . . .

Kadang-kadang lebih baik untuk selalu mengevaluasi kedua ekspresi, yaitu

permintaan untuk evaluasi yang lengkap. Dalam hal ini, menggunakan & dan |

operator daripada & & dan | |

Pendahuluan dan peraturan Associativity


Boolean dan ekspresi aritmatika tidak perlu sepenuhnya kurung. Jika

beberapa atau semua tanda kurung dihapus, Java akan mengikuti preseden dan

aturan associativity (diringkas dalam tabel berikut) untuk menentukan urutan


operasi.

Jika satu operator terjadi lebih tinggi dalam tabel dari siapapun lain,

memiliki hak yang lebih tinggi dan dikelompokkan dengan operan sebelum hak
operator rendah.

Jika dua operator memiliki hak yang sama, maka aturan associativity untuk

menentukan yang dikelompokkan pertama

Mengevaluasi Ekspresi
Secara umum, kurung dalam ekspresi dapat untuk membantu dokumen

programmer. Daripada mengandalkan aturan protokoler dan associativity, yang


terbaik adalah memasukkan tanda kurung siku, kecuali arti yang diinginkan jelas

Binding: Hubungan dari operan dengan operator mereka. Ekspresi kurung


menyelesaikan dan sepenuhnya mengikat untuk semua operator dalam ekspresi

Side Effects: Bila, selain untuk nilai-nilai, ekspresi mengubah sesuatu,

seperti nilai-nilai dari variable tugas, meningkatkan dan operator penurunan


semua menghasilkan efek samping

Aturan Untuk Mengevaluasi Ekspresi


Tentukan setara. Sepenuhnya melakukan ekspresi mengikat menggunakan

kurung yang benar dan aturan associativity. Prosiding kiri ke kanan, mengevaluasi

apa yang bisa segera dievaluasi subexpressions. subexpressions atau metode


argumen, misalnya, evaluasi konstan atau variabel numerik untuk setiap operasi

asing dan metode permintaan sesegera semua operator (argumen yaitu) telah
dievaluasi

Pengulangan
Loop di Java sama dengan dalam bahasa tingkat tinggi lain. java memiliki

tiga jenis laporan loop: Sementara itu, sementara agenda, dan melaporkan kode
berulang dalam satu lingkaran loop disebut tubuh disebut tubuh masing-masing
loop-loop iterasi putaran

Pernyataan While
Sebuah pernyataan yang sementara digunakan untuk mengulang bagian

dari kode tersebut (yaitu, tubuh loop) berdasarkan evaluasi ekspresi. Ekspresi
Boolean Boolean diperiksa sebelum tubuh loop dijalankan ka salah, tubuh loop

tidak dijalankan sama sekali. Sebelum pelaksanaan setiap loop iterasi berikut
tubuh, ekspresi Boolean diperiksa kembali. Jika itu benar, tubuh loop dijalankan

lag, Jika salah, pernyataan itu mengakhiri loop tubuh loop dapat terdiri dari
sebuah pernyataan tunggal, atau pernyataan yang ditutupi dalam sepasang
kurung (())

Pernyataan Do- while


Do- while pernyataan yang digunakan untuk menjalankan beberapa kode

(misalnya, tubuh loop), kemudian ulangi berdasarkan evaluasi ekspresi Boolean

dari tubuh loop dieksekusi sedikitnya satu kali dalam ekspresi. Boolean diperiksa

setelah tubuh loop dijalankan adalah ekspresi Boolean diperiksa setelah setiap

iterasi dari tubuhar, tubuh loop dijalankan lagi palsu, pernyataan loop ujung

Lupa untuk meletakkan titik koma setelah ekspresi Boolean. Sebagai

laporan sementara, tubuh loop dapat terdiri dari pernyataan tunggal, atau
pernyataan yang ditutupi dalam sepasang tanda kurung (())

Perancangan Algoritma
Komputer itu bodoh! Kenapa? Karena sebagai programmer, kita harus

memberikan perintah hingga sangat detail apa yang harus dikerjakan oleh

komputer. Programmer adalah orang yang bertugas untuk menerjemahkan suatu

tugas menjadi instruksi detail yang dapat dimengerti oleh komputer. Komputer
hanya melakukan apa yang diperintahkan baris demi baris, tetapi komputer tidak
bisa berfikir bagaimana melakukan suatu tugas seefisien mungkin.

Untuk itu programmer baru harus dilengkapi dengan cara berfikir dan

peralatan yang memungkinkan mereka untuk sukses dalam menerjemahkan


suatu tugas menjadi rangkaian perintah yang bisa dimengerti oleh komputer.

Program komputer itu seperti seni yang memuat suatu ide. Seorang

programmer mulai dengan suatu tugas di kepalanya, misalnya menghitung sisi

miring dari segitiga siku-siku. Kemudian dia akan berfikir tentang apa yang harus
dilakukan untuk menyelesaikan tugas tersebut dalam bahasa manusia. Dalam hal

ini misalnya, sisi miring dapat dihitung dengan mengambil akar kuadrat dari
jumlah kuadrat sisi siku-sikunya. Pemecahan masalah ini kemudian diterjemahkan
ke dalam bahasa pemrograman yang berupa perintah langkah demi langkah
bagaimana komputer harus menyelesaikan tugas tersebut.

Perintah langkah demi langkah hingga detail ini disebut algoritma. (Secara

teknis, algoritma adalah kumpulan langkah-langkah sederhana yang jelas, tidak


membingungkan karena hanya ada satu cara untuk melakukan langkah
sederhana tersebut, dilakukan selama kurun waktu tertentu. Kita tidak ingin
program menghitung selamanya tanpa batas waktu.)

Program ditulis dalam bahasa pemgrograman tertentu. Tetapi algoritma

ditulis secara umum atau generic, dalam bahasa manusia, sehingga bisa
diimplementasikan menggunakan bahasa pemrograman apapun. Atau dengan

kata lain, algoritma mirip seperti ide di belakang program yang akan kita tulis.

Tetapi ide tersebut harus jelas, dan memuat langkah demi langkah yang
sederhana.

Jadi darimana algoritma itu datang? Biasanya orang harus membuat

algoritma itu. Dengan skill, latihan dan pengalaman, orang akan lebih mudah

membuat suatu algoritma. Di bagian ini akan dibahas tentang bagaimana


membuat suatu algoritma. Jadi bahasa Java akan kita tinggalkan sementara. Kita
akan beralih untuk berfikir secara abstrak.

Misalnya, kita memiliki suatu tugas di kepala. Salah satu cara untuk

menyelesaikan tugas itu adalah menuliskan penyelesaiannya langkah demi


langkah, dan dari sana kita membuat algoritma untuk menyelesaikan masalah itu.

Kemudian dari setiap langkah tersebut, kita bisa membuat langkah-langkah lain

yang lebih detail, sampai kita bisa menerjemahkan langkah-langkah itu ke dalam
bahasa pemrograman. Metode ini disebut penghalusan bertahap (stepwise

refinement), dan sifatnya top-down atau dari atas ke bawah. Sambil kita
menambah detail pada setiap langkah, kita bisa mulai menuliskan algoritma
dalam bentuk pseudocode (kode palsu) yang bentuknya tidak harus persis atau
mengikuti suatu bahasa pemrograman.

Misalnya, kita ambil contoh untuk menghitung rata-rata dari 5 bilangan.

Kita bisa menuliskan pseudocode dalam bentuk berikut :


ambil input user untuk bilangan pertama
masukkan ke variabel x
ambil input user untuk bilangan kedua
tambahkan variabel x dengan bilangan kedua
ambil input user untuk bilangan ketiga
tambahkan variabel x dengan bilangan ketiga
ambil input user untuk bilangan keempat
tambahkan variabel x dengan bilangan keempat
ambil input user untuk bilangan kelima
tambahkan variabel x dengan bilangan kelima
bagi variabel x dengan 5
tampilkan hasilnya di layar
Algoritma di atas betul, tetapi terlalu banyak perulangan. Bagaimana jika

bilangan yang akan dirata-ratakan ada 100? Kita bisa udah algoritma di atas
dengan pseudocode yang lebih mudah dimengerti, misalnya
while a kurang dari 5
ambil input user untuk bilangan ke-a
tambahkan nilai x dengan bilangan ke-a
tambah a dengan 1
bagi variabel x dengan 5
tampilkan di layar
Sekarang, ambil input user bisa dideskripsikan lebih jauh. Kita harus

memberikan pertanyaan kepada user. Dan seperti dipelajari pada bab

sebelumnya, input dari user berupa String yang harus diterjemahkan ke dalam
tipe data bilangan untuk bisa dikalkulasi. Pseudocode di atas dapat ditulis ulang
sebagai berikut :
while a kurang dari 5
beri pertanyaan kepada user untuk memasukkan bilangan
ke-a
ambil input user untuk bilangan ke-a

ubah input menjadi bilangan


tambahkan nilai x dengan bilangan ke-a
tambah a dengan 1
bagi variabel x dengan 5
tampilkan di layar
Dan juga dari pelajaran sebelumnya, untuk mengambil input user, kita bisa

dihadapkan pada permasalahan IO (input output). Selain itu kita juga harus
menginisialisasi pembaca dan tempat meletakkan string sementara. Untuk itu,
kita harus mengubah pseudocode nya menjadi seperti ini
inisialisasi pembaca
inisialisasi tempat string sementara
while a kurang dari 5
beri pertanyaan kepada user untuk memasukkan bilangan
ke-a
"coba" ambil input user untuk bilangan ke-a
jika ada masalah keluar dari program
ubah input menjadi bilangan
tambahkan nilai x dengan bilangan ke-a
tambah a dengan 1
bagi variabel x dengan 5
tampilkan di layar
Kemudian, perlu diperhatikan bahwa variabel a dan x tidak diketahui nilai

awalnya oleh komputer. Bayangkan jika nilai a dan x ditentukan oleh komputer

secara acak, bukan saja hasil rata-ratanya menjadi tak tentu, tetapi juga
perulangannya menjadi tak menentu. Untuk itu kita harus tambahkan perintah
untuk menginisialisasi a dan x dengan 0, sehingga pseudocodenya menjadi
inisialisasi x dengan 0
inisialisasi a dengan 0
inisialisasi pembaca
inisialisasi tempat string sementara
while a kurang dari 5
beri pertanyaan kepada user untuk memasukkan bilangan
ke-a
"coba" ambil input user untuk bilangan ke-a
jika ada masalah keluar dari program
ubah input menjadi bilangan
tambahkan nilai x dengan bilangan ke-a
tambah a dengan 1
bagi variabel x dengan 5
tampilkan di layar

Dari sini kita bisa menerjemahkan pseudocode tersebut menjadi program

Java, yaitu
double x = 0;
int a = 0;
BufferedReader
br
=
new
BufferedReader(new
InputStreamReader(System.in));
String strbilangan = null;
while (a < 5) {
System.out.print("Masukkan bilangan ke-" + a + " : ");
try {
strbilangan = br.readLine();
} catch (IOException ioe) {
System.out.println("Kesalahan
IO,
program
berhenti");
System.exit(1);
}
x = x + Double.parseDouble(strbilangan);
a = a + 1;
}
x = x / 5;
System.out.println("Rata-rata
bilangan
yang
dimasukkan
adalah " + x);
Jangan lupa bahwa program tersebut membutuhkan paket java.io.*,
sehingga kita harus menambah
import java.io.*

Pernyataan For
Untuk klaim yang paling sering digunakan untuk langkah melalui variabel

integer tahap yang sama diawali dengan kata kunci for, diikuti dengan tiga
ekspresi dalam kurung yang menjelaskan apa yang harus dilakukan dengan satu

atau lebih variabel untuk mengontrol ekspresi pertama memberitahu bagaimana


variabel kontrol atau variabel diinisialisasi atau dideklarasikan dan diinisialisasi

sebelum iterasi pertama ekspresi, kedua menentukan waktu loop harus berakhir,
berdasarkan evaluasi ekspresi Boolean sebelum setiap iterasi ekspresi ketiga
menceritakan bagaimana variabel kontrol atau variabel akan diperbarui setelah
setiap tubuh loop iterasi

Pernyataan Syntax For

For (inisialisasi; Boolean_Expression; Update) Badan Pengawas dapat terdiri

dari pernyataan tunggal atau daftar laporan tertutup dalam sepasang tanda

kurung (()). Perhatikan bahwa tiga ekspresi kontrol dipisahkan oleh dua,, bukan

tiga titik koma. Perhatikan bahwa ada tidak ada titik koma setelah kurung tutup
pada awal loop

Tanda Koma dari Pernyataan For


For loop dapat berisi beberapa inisialisasi tindakan dipisahkan oleh koma

Perhatian harus digunakan ketika menggabungkan sebuah deklarasi dengan


beberapa tindakan ini ilegal untuk menggabungkan beberapa jenis deklarasi

dengan beberapa tindakan, seperti untuk menghindari masalah yang mungkin,


yang terbaik adalah untuk menyatakan semua variabel luar pernyataan for A

untuk loop dapat berisi tindakan memperbarui beberapa, dipisahkan dengan


koma juga Hal ini bahkan dimungkinkan untuk menghilangkan tubuh loop di

jalan, namun, untuk loop hanya dapat berisi satu ekspresi Boolean untuk menguji
loop akhir.

Aplikasi Java
Opera Mini
Aplikasi ini berguna untuk membuka web di layar ponsel. Aplikasi ini

sangat populer dengan banyak pemakai khususnya Indonesia. Dengan


Opera

Mini

dikompres

maka

datanya

laman

web

sedemikian

dapat

rupa

dibuka

sehingga

di

layar

dapat

ponsel

dengan

dan

mudah

dibuka karena ringan. Opera Mini dapat diunduh secara gratis tanpa
harus membayar. Dalam hal pendidikan Opera Mini pada prinsipnya sama seperti
mozila firefox atau google chrome yang berfungsi mencari informasi apa saja.

Mig33
Aplikasi ini diperuntukkan untuk para penggila chatting di dunia maya.

Dengan Mig33 maka kita akan bertemu dengan banyak kawan baru baik

itu melalui PV (Private Chat) ataupun melalui Room Chat. Mig33 dapat

diperoleh secara gratis dan Indonesia merupakan pengguna terbanyak


Mig33 di dunia.

Ebuddy
yang

untuk

Selain Mig33 yang handal untuk urusan chatting, ada satu lagi aplikasi
patut

diunggulkan.

berbagai

akun

Ebuddy

Instans

adalah

Massage.

aplikasi

Seperti

Java

yang

Yahoo

support

Messenger,

Facebook, MSN, Google Talk, dan masih banyak lagi. Aplikasi ini dapat
diperoleh secara gratis.

Nimbuzz

Sejatinya, Nimbuzz pada awalnya hanya diperuntukkan bagi pengguna

PC. Namun pada perkembangannya kemudian, Nimbuzz dapat berjalan


di

berbagai

messenger

Messenger,

ponsel.

Termasuk

Facebook,

Google

yang

support

ponsel

dengan

Talk,

Java.

beberapa
Skype,

Nimbuzz

akun

MSN,

banyak lagi. Aplikasi ini dapat diunduh secara gratis.

IM,

adalah

seperti

Jabber,

dan

aplikasi
Yahoo

masih

Kamus Besar Bahasa Indonesia Mobile (KBBI)


Aplikasi ini merupakan aplikasi layaknya sebuah kamus bahasa Indonesia.

Perbedaannya, aplikasi ini tidak menjabarkan semua kata dari abjad A sampai Z,

tetapi hanya disuguhkan sebuah kotak pencarian, lalu user menulis kata apa yang

ingin dicari. Aplikasi ini dinilai sangat praktis untuk pembelajaran, dibandingkan

dengan kamus bahasa Indonesia yang cenderung lebih berat untuk dibawa.
Selain itu aplikasi ini juga mudah dicari dan dapat diunduh secara gratis.

PD English-Indonesia
Aplikasi ini juga merupakan aplikasi layaknya sebuah kamus bahasa inggris

Indonesia. Prinsip kerjanya sama dengan KBBI Mobile yakni hanya disediakan

kotak pencarian, lalu user mencari kata yang mau diterjemahkan, dari inggris
Indonesia atau dari Indonesia ke inggris. Aplikasi ini juga mudah dicari dan dapat
diunduh secara gratis.

Al-Quran Digital

Al-Quran Digital merupakan aplikasi Al-Quran yang dibuat untuk mobile,

dengan mengedepankan segi kepraktisan. Aplikasi ini menyuguhkan ayat-ayat

Al-Quran sekaligus artinya. Aplikasi ini juga mudah dicari dan dapat diunduh
secara gratis.

Macam-macam Game Java


Sebenarnya banyak sekali game-game mobile yang dibuat oleh java, akan

tetapi disini penulis hanya menjelaskan beberapa game saja, yakni:

Sudoku
Game ini merupakan salah satu game java yang sangat sederhana. Akan

tetapi meskipun sederhana game ini cukup susah untuk diselesaikan, karena

untuk menyelesaikan game ini dibutuhkan ketelitian yang luar biasa. Game ini
banyak tersebar di internet dan dapat diunduh secara gratis.

Brain Challenge
Game ini merupakan game asah otak yang mengukur kemampuan otak

dalam memcahkan masalah secara cepat. Game ini layaknya psikotest namun

lebih sederhana dan simple. Pertanyaan dan soal yang disuguhkan berupa logika
dan bersifat rasional. Game ini banyak tersebar di internet dan dapat diunduh
secara gratis.

BAB III
PENUTUP
Kesimpulan
Kesimpulan yang dapat ditarik dari pembahasan mengenai java yaitu:

1. 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.

2. Sama halnya dengan semua bahasa dapat dipemrograman, Java juga


menyediakan operator-operator aritmatika untuk memanipulasi data
numerik.

3. 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.

Saran
Bahasa pemrograman java merupakan bahasa yang rumit dan cukup

susaah untuk dipelajari. Akan tetapi apabila dapat menguasai maka anda dapat
menghasilkan uang banyak. Oleh karena itu penulis menyarankan pembaca,
khususnya pemula untuk belajar sejak dini dan selalu berlatih.

DAFTAR PUSTAKA
Google. 2009. Belajar Java: Kelas Math. Diunduh pada tanggal 13 Oktober 2013 di
http://www.java.lyracc.com/artikel/java-untuk-pemula/kelas-math.

Google. 2009. Belajar Java: Kelas Sebagai Kumpulan Subrutin dan Variabel Statik.
Diunduh pada tanggal 13 Oktober 2013 di http://www.java.lyracc.com/artikel/javauntuk-pemula/kelas-sebagai-kumpulan-subrutin-dan-variabel-statik.

Google. 2009. Belajar Java: Kelas Sebagai Tipe Data. Diunduh pada tanggal 13 Oktober
2013 di http://www.java.lyracc.com/artikel/java-untuk-pemula/kelas-sebagai-tipe-data.

Google. 2009. Belajar Java: Kelas String. Diunduh pada tanggal 13 Oktober 2013 di
http://www.java.lyracc.com/artikel/java-untuk-pemula/kelas-string.

Google. 2009. Belajar Java: Perancangan Algoritma. Diunduh pada tanggal 13 Oktober
2013 di http://www.java.lyracc.com/artikel/java-untuk-pemula/perancangan-algoritma.

Google. 2009. Belajar Java: String, Objek, dan Subrutin. Diunduh pada tanggal 13

Oktober 2013 di http://www.java.lyracc.com/belajar/java-untuk-pemula/string-objekdan-subrutin.


Google.

1990.

Java

Wikipedia

http://www.wikipedia.com/java.

dan

Ensiklopedia

Bebas.

Diunduh

di

Anda mungkin juga menyukai