560 likes | 886 Views
Pengenalan Bahasa Pemrograman Java. Apa yang Disebut Java ?. Bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan kemampuan-kemampuan terbaik bahasa pemrograman objek sebelumnya (C++, Ada, Simula). Diciptakan oleh James Gosling, developer dari Sun Microsystems pada tahun 1991.
E N D
Apa yang Disebut Java ? • Bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan kemampuan-kemampuan terbaik bahasa pemrograman objek sebelumnya (C++, Ada, Simula). • Diciptakan oleh James Gosling, developer dari Sun Microsystems pada tahun 1991.
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
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
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 Sun Microsystem • Java 2 Software Developer Kit (J2SDK) • Windows • SPARC • X86 Solaris • Linux • Versi terbaru Java SE 6
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
Membuat Program Java • Persiapan • Download dan Instalasi J2SDK • Setting jalur eksekusi • Penulisan program: • Menulis program • Kompilasi • Eksekusi
Persiapan • Download dan Installasi J2SDK http://java.sun.com/javase/downloads/ • Setting jalur eksekusi Settings – Control Panel – System – Advanced – Environment Variables
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
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
ContohPenulisanNamaVariabel yang Diizinkan • @2var • _status • tanggal • jumlahBarang • nama_kecil • final_test • int_float
Tipe Data di Java • Tipe data dalam Java dibagi dalam dua kategori: 1. Sederhana (primitif) 2. Komposit (referensi)
Tipe data sederhana (primitif) • Tipe data sederhana merupakan tipe inti. Tipe sederhana tidak diturunkan dari tipe lain. Terdapat delapan tipe data primitif di Java: - Empat tipe adalah untuk bilangan bulat (integer) : byte, short, int, long - Dua untuk tipe angka pecahan (floating point): float, double - Satu untuk tipe karakter, yaitu char - Satu untuk tipe boolean yang berisi nilai logika: true/false
Tipe data sederhana (primitif) Integer:
Tipe data sederhana (primitif) Floating Point: Tipe data floating point merupakan tipe data untuk untuk variabel yang nilai-nilainya adalah bilangan real (dapat mempunyai pecahan desimal).
Tipe data sederhana (primitif) Char: Tipe data textual merupakan tipe data untuk variabel yang nilai-nilainya adalah karakter tunggal. Tipe data yang merupakan tipe data textual adalah char yang memiliki panjang 16 bit. Nilai variabel char ditulis dengan diberi tanda kutip tunggal ‘...’. Berikut contoh penggunaan tipe data char : public char alphabet = ‘A’; public char ascii = ‘\111’; // jika dicetak, akan menghasilkan // huruf ‘I’;
Tipe data sederhana (primitif) Logika (Boolean): Tipe data logika adalah tipe data yang hanya memiliki 2 kemungkinan nilai, yaitu true atau false. Hanya satu tipe data logika pada teknologi Java, yaitu boolean. Berikut contoh penggunaan tipe data boolean : public boolean status = true; public boolean check = 10 < 5 ; // nilai check menjadi // false
Tipe Data Komposit Tipe data komposit merupakan tipe data yang disusun dari tipe data sederhana atau tipe komposit lain yang sudah ada. Tipe ini dapat berupa array, string, kelas, dan interface. Khusus untuk String pada Java dikenali sebagai kelas, bukan sebagai array of character. String pada Java diapit oleh tanda petik ganda (“.....”), contoh: String s=”Saya makan nasi”;
Promosidan Casting Promosiadalahprosespengubahanrepresentasi bit variabel primitifdarirepresentasi bit yang lebihrendahke representasi bit yang lebihtinggi. Promosidapatterjadi apabila : • Jikaterjadiassigningnilaidaritipe data denganrepresentasi bit yang lebihkecilketipe data denganrepresentasi bit yang lebihbesar, seperti yang diperlihatkanpadacontohberikutini: short a = 12; int b = a ;
Promosidan Casting b. Jika terjadi assigning nilai dari tipe data integral ke tipe data floating-point, seperti yang diperlihatkan pada contoh int a = 30; float b = a ;
Promosidan Casting Casting tipemerupakanprosespengubahanrepresentasi bit variabelprimitifdarirepresentasi bit yang lebihtinggikerepresentasi bit yang lebihrendah. Sintakdaritype castingadalahsebagaiberikut : identifier = (target_type) value ; ket: • identifier = namavariabel yang menjaditempatpenyimpanannilai; • target_type = tipe data yang diinginkanmenjaditipe data darivalue; • value = nilaiyang akandi-casting.
Promosidan Casting Berikut contoh casting tipe int num1 = 34; int num2 = 45; short num3 = (short)(num1 + num2 ); System.out.println(num3);
Operator di Java • Operator Unary
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;
Contoh int c = 12 * 3 +5 / (8 - 3) ; Maka urutan operasinya adalah sebagai berikut : int c = 12 * 3 + 5 / 5 ; int c = 36 + 5 / 5; int c = 36 + 1 ; int c = 37;
KataKunci Final Dalam aplikasi terkadang dibutuhkan suatu variabel yang dicegah untuk dimodifikasi oleh program lainnya. Hal ini dilakukan untuk menjaga agar logika program tetap terjaga. Untuk membuat konstanta, digunakan sebuah modifier final.
KataKunci Final • Contoh class Lingkaran{ final double pi = 3.14; //konstanta yg nilainya tidak dapat //diubah lagi oleh program lain double jari2; double luas; public double hitungLuas(){ luas = pi*jari2*jari2; return luas; } public double hitungKeliling(){ return 2*pi*jari2; } }
KonstruksiPengambilanKeputusan Konstruksi if Konstruksi if merupakan bentuk konstruksi pengambilan keputusan dengan 2 kemungkinan keputusan. Kemungkinan- kemungkinan keputusan itu akan dipilih berdasarkan suatu kondisi yang diperiksa. Kondisi tersebut merupakan suatu ekspresi boolean / boolean expression. Sintaks dasarnya: if ( boolean_expression ){ code block; }
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); } }
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; }
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); } }
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; }
Keterangan: • switchadalah 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 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; } System.out.println(“Nilai Rata-rata = ” + rata_rata); } }
KonstruksiPengulangan (looping) While Konstruksi while adalah konstruksi pengulangan yang jumlah perulangannya tergantung pada suatu kondisi logika tertentu. Bentuk umum konstruksi while adalah sebagai berikut : while(boolean_expression){ code_block; } //akhir dari konstruksi while
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.
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); } } }
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; } } } }
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.
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.
Contoh public class Contoh3{ public static void main(String[] args){ for(int variable=20; variable>=10;variable--){ System.out.println(“Nilai variable =”+ variable); } } }