Pengenalan Java
Pengenalan Java
Java
Karakteristik Java
Sederhana, semudah C dan seampuh C++: berlawanan dengan anggapan orang-orang bahwa bahasa Java sulit untuk dipelajari, Java gampang untuk dipelajari terutama untuk orang yang sudah mengenal pemrograman tapi belum terlalu terikat pada paradigma pemrograman prosedural. Tentu saja ini berarti bahwa kita harus siap mempelajari salah satu teknologi yang berkembang paling cepat di dunia dalam dua tahun terakhir ini dengan banyak membaca tentunya baik dari buku maupun melalui web.
Karakteristik Java
Sangat berorientasi obyek (OOP) dengan implementasi yang sangat baik Arsitekturnya yang kokoh dan pemrograman yang aman. Dalam Java program yang kita buat tidak mudah untuk hang karena konflik pada memori biasanya diselesaikan dengan mengumpulkan obyek-obyek yang sudah tak terpakai lagi secara otomatis oleh garbage collector. Penanganan kesalahan juga dipermudah dalam Java dengan konsep Exception
4
Karakteristik Java
Bukan sekedar bahasa tapi juga platform sekaligus arsitektur. Java mempunyai portabilitas yang sangat tinggi. Ia dapat berada pada smartcard, pager, POS (Point of Service), handphone, PDA, palm, TV, Embedded device (PLC, micro controller), laptop, pc, dan bahkan server). Menyadari akan hal ini Sun membagi arsitektur Java membagi tiga bagian, yaitu: Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan superset dari Standar Java Standard Java (J2SE), ini adalah yang biasa kita kenal sebagai bahasa Java, dan merupakan fokus kita sekarang. Micro Java (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk wireless device/mobile device
5
Karakteristik Java
Program Java dijalankan menggunakan interpreter melalui Java Virtual machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda. Fitur-fitur utama yang lain: - Mendukung multithreading. - Selalu memeriksa tipe obyek pada saat runtime.
Java Platform
Platform dapat diartikan sebagai lingkungan perangkat keras atau perangkat lunak dimana program dijalankan. Umumnya platform berdasarkan nama sistem operasi yang digunakan, misalnya Windows 2000, Linux, Solaris, atau MacOS. Platform Java mempunyai dua komponen, yaitu: Java Virtual machine (Java VM) Merupakan fondasi untuk platform Java yang dapat digunakan di berbagai platform perangkat keras. Java Application Programming Interface (Java API) Kumpulan komponen-komponen perangkat lunak siap pakai (ready-made software components) untuk berbagai keperluan
10
Penulisan program:
Menulis program Kompilasi Eksekusi
11
Persiapan
Download dan Installasi J2SDK
http://java.sun.com/javase/downloads/
12
Identifier di Java
Identifier adalah nama yang diberikan kepada variabel, method, kelas, paket, dan interface Adapun tatacara penamaan identifier: 1. Case sensitive, huruf kapital dan kecil dibedakan 2. Identifier yang diberikan oleh pemrogram tidak boleh sama dengan keyword yang ada di Java 3. Dimulai dengan huruf atau underscore (garis bawah) atau tanda ($). Namun sebisa mungkin diawali dengan huruf karena mungkin identifier dengan awalan underscore dan ($) digunakan unruk pemrosesan internal dan file import 4. Karakter berikutnya dapat berupa huruf atau angka 0 sampai 9. Simbol-simbol seperti + dan spasi tidak dapat digunakan
13
Keywords di Java
Keyword adalah identifier yang digunakan Java untuk suatu tujuan khusus. Daftar keyword Java adalah sebagai berikut: abstract do implements private this boolean double import protected throw break else instanceof public throws byte extends int return transient case false interface short true catch final long static try char finally native strictfp void class float new super volatile continue for null switch while default if package synchronized
14
16
short
16 bit
int
32 bit
long
64 bit
67L
18
double
64 bit
Contoh Penulisan Nilai yang Diperbolehkan 78F -34736.86F 6.4E4F ( sama dengan 6,4 x 104 ) -2356 3.5E7 67564788965.567
19
20
21
22
23
24
26
Operator di Java
Operator Unary
Arti Operator Pre-Increment Operator Contoh Pemakaian ++operand int i = 8 ;
int j = ++i; i bernilai 9, j bernilai 9 Post-Increment operand++ int i = 8; int j = i++; Pre-Decrement --operand i bernilai 9, j bernilai 8 int i = 8 ; int j = --i; Post-Increment operand-i bernilai 7 , j bernilai 7 int i=8; int j = i--; i bernilai 7, j bernilai 8
27
Operator Binary
Arti Operator Operator
+ * / Penjumlahan Pengurangan Perkalian Pembagian
Contoh Pemakaian
Keterangan
sum=num1 + num2 diff=num1 - num2 prod=num1 * num2 quot=num1 / num2 jika num1 dan num2 adalah integer, pembagian akan menghasilkan nilai integer tanpa mengikutsertakan sisa, jika terdapat sisa. Hasil operasi modulus adalah sisa dari operasi num1 / num2. Hasil operasi modulus memiliki tanda ( +/- ) yang sama dengan operand pertama
Sisa (modulus)
mod=num1 % num2
28
Prioritas Operator
operator yang berada dalam tanda kurung ( ... ) atau disebut juga parantheses; operator-operator increment atau decrement; operator - operator perkalian atau pembagian, yang urutan operasinya dari kiri ke kanan; operator-operator penjumlahan atau pengurangan, yang urutan operasinya dari kiri ke kanan;
29
c c c c
= = = =
12 * 3 + 5 / 5 ; 36 + 5 / 5; 36 + 1 ; 37;
30
Operator Relasi
Condition
Is equal to (atau is the same as) Is not equal to (atau is not the same as) Is less than !=
Operator
==
Example
int i = 1; System.out.println(i==1); : true) int i = 1; System.out.println(i!=1); : false) // (output
// (output
<
<=
>
>=
int i = 1; System.out.println(i<1); // (output : false) int i = 1; System.out.println(i<=1); //(output : true) int i = 1; System.out.println(i>1); //(output : false) int i = 1; System.out.println(i>=1); // (output : true) 31
Operator kondisional
Condition If one condition AND another condition Operator && Example int i = 1; int j = 2; System.out.println((i<1)&&(j>0)); // (output : false) int i = 1; int j = 2; System.out.println((i<1)||(j>0)); // (output : true) int i = 1; System.out.println(!(i<3)); // (output : false)
||
NOT
32
35
36
Contoh:
public class HasilUjian{ public static void main(String[] args){ int nilai1 = 8; int nilai2 = 7; int nilai3 = 5; float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3; if(rata_rata<5){ System.out.println(Tidak Lulus); } System.out.println(Nilai Rata-rata = +rata_rata); } }
37
Konstruksi if..else.. Konstruksi if / else digunakan sebagai konstruksi pengambilan keputusan yang memiliki beberapa kemungkinan keputusan. Sintak dasarnya adalah seperti berikut :
if ( boolean_expression_1 ){ code block 1; } else if ( boolean_expression_2 ){ code block 2; } . . . else{ code block n; }
38
39
Contoh
public class HasilUjian{ public static void main(String[] args){ int nilai1 = 8; int nilai2 = 7; int nilai3 = 5; float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3; if(rata_rata<5){ System.out.println(Tidak Lulus); } else if ((rata_rata>=5) && (rata_rata<6)){ System.out.println(Harus ikut ujian perbaikan); } else { // rata_rata >= 6 System.out.println(Lulus); } System.out.println(Nilai Rata-rata = + rata_rata); } }
40
Konstruksi Switch Konstruksi switch adalah konstruksi pengambilan keputusan yang mengevaluasi kemungkinan-kemungkinan nilai dari variabel yang dievaluasi. Bentuk umum syntax konstruksi switch adalah sebagai berikut:
switch( variabel ) { case nilai_literal_1 : code_block_1; break; case nilai_literal_2 : code_block_2; break; . . default: code_block_default; break; }
41
Keterangan: switch adalah kata kunci yang mengindikasikan dimulainya konstruksi switch; variabel adalah variabel yang nilainya akan dievaluasi. variabel hanya dapat bertipe-data char, byte, short, atau int; case adalah kata kunci yang mengindikasikan sebuah nilai yang diuji. Kombinasi kata kunci case dan nilai_literal disebut case label; nilai_literal_k adalah nilai yang mungkin akan menjadi nilai variabel. nilai_literal_k tidak dapat berupa variabel, ekspresi, atau method, tetapi dapat merupakan konstanta. k = {default, 1,2,...,n }; break adalah pernyataan yang sifatnya opsional, yang mengakibatkan aliran program keluar dari blok switch. Jika setelah code_block_k tidak terdapat pernyataan break, maka aliran program akan masuk ke case berikutnya. k = {default, 1,2,3,...,n}; default adalah kata kunci yang mengindikasikan code_block_default akan dieksekusi jika semua case yang 42 diuji tidak sesuai dengan nilai variabel .
Contoh:
public class HasilUjian{ public static void main(String[] args){ int nilai1 = 8; int nilai2 = 7; int nilai3 = 5; float rata_rata = (float)(nilai1 + nilai2 + nilai3)/3; switch((int)rata_rata){ case 0 : case 1 : case 2 : case 3 : case 4 : System.out.println(Tidak Lulus); break; case 5 : System.out.println(Ikut ujian perbaikan); break; default : System.out.println(Lulus); break;
43
44
Pada konstruksi while, langkah-langkah proses perulangannya adalah sebagai berikut : Sistem memeriksa boolean_expression. Jika nilai boolean_expression adalah true, maka code_block akan dieksekusi. Jika tidak, maka code_block tidak dieksekusi. Jika di dalam code_block terdapat pernyataan kondisi yang menyebabkan proses harus keluar dari blok while, maka proses akan keluar dari pengulangan, meskipun boolean_expression masih bernilai true.
45
Contoh: public class Contoh1{ public static void main(String[] args){ int num1 = 0; int num2 = 23; int num3 = num1+num2; while(num3 > num1){ num2-=3; num1+=2; num3 = num1+num2; System.out.println(num1=+num1+,num3=+num3); } } }
46
public class Contoh9_2 { public static void main(String[] args){ int variable = 20; while(true){ System.out.println(Nilai variable = +variable); --variable; if(variable<10){ break; } } } }
47
Konstruksi for Bentuk umum dari konstruksi loop menggunakan for adalah :
for(initialize[,initialize];boolean_expression; update[,update]){ code_block; }
bagian inisialisasi, yang berisi pernyataan pemberian nilai awal untuk suatu variabel parameter; bagian boolean_expression, yang berisi pernyataan logika yang akan diperiksa, sebagai syarat pengulangan terus dilanjutkan. Pengulangan akan dilanjutkan jika nilai ekspresi boolean pada segmen ini bernilai true. bagian update, yang berisi pernyataan updating parameter ketika satu putaran pada pengulangan selesai dieksekusi.
48
bagian inisialisasi dapat diisi dengan lebih dari 1 pernyataan inisialisasi; bagian boolean_expression hanya dapat diisi oleh 1 pernyataan logika; bagian update dapat diisi dengan lebih dari 1 pernyataan update.
49
Contoh
public class Contoh3{ public static void main(String[] args){ for(int variable=20; variable>=10;variable--){ System.out.println(Nilai variable =+ variable); } } }
50
public class Contoh4{ public static void main(String[] args){ for(int variable1=20, variable2=0; variable1>=10&& variable2<=5;variable1--,variable2++){ System.out.println(Nilai variable1= + variable1); System.out.println(Nilai variable2= +variable2); } } }
51
public class Contoh5{ public static void main(String[] args){ int variable = 20; for( ; ; ){ System.out.println(Nilai variable1= +variable); variable--; if(variable<10)break; } } }
52
Konstruksi dowhile Konstruksi Pengulangan do/while mirip dengan konstruksi while. Perbedaannya adalah pada urutan prosesnya, yaitu : Looping dijalankan terlebih dahulu; Dilakukan pemeriksaan kondisi.
public class Contoh6{ public static void main(String[] args){ int variable = 20; do{ System.out.println(Nilai variable1= + variable); variable--; }while(variable>20); } }
53