JAVA • JAVA => 1991 => James gosling => Sun Microsystem => Green Project Karakterisktik JAVA • Berorientasi Objek • Robust • Multi thread • Multi Platform ERROR Ada 2 macam error : 1) Syntax error • Syntax errors biasanya terjadi karena kesalahan penulisan. Kekurangan sebuah perintah di Java atau lupa untuk menulis tanda titik-koma pada akhir pernyataan. • Kesalahan lainnya dalam kapitalisasi, ejaan, penggunaan dari karakter khusus yang tidak benar, dan penghilangan dari pemberian tanda baca yang sebenarnya. • Java mencoba untuk mengisolasi error tersebut dengan cara menunjukkan baris dari kode dan terlebih dahulu menunjuk karakter yang salah dalam baris tersebut. Bagaimanapun juga, error belum tentu berada pada titik yang ditunjuk. Contoh Syntax Error pada JAVA 2) Run-time Error • Run-time error merupakan error yang tidak akan ditampilkan sampai Anda menjalankan program Anda. Bahkan program yang dikompilasi dengan sukses dapat menampilkan jawaban yang salah jika programmer belum berpikir sampai struktur dan proses logis dari program tersebut. Struktur Program JAVA • • • • • • • • Komentar Blok Modifier Class Method / Fungsi Main method Kata Kunci Statement Komentar • Komentar adalah catatan yang ditulis pada kode dengan tujuan sebagai bahan dokumentasi. • Teks tersebut bukan bagian dari program dan tidak mempengaruhi jalannya Program. • Java mendukung tiga jenis komentar : C++ style komentar satu baris, C style beberapa baris, dan komentar javadoc khusus Penulisan Komentar C++ Style Komentar C++ style diawali dengan //. komentar. Contoh : Semua teks setelah // dianggap sebagai // This is a C++ style or single line comments Penulisan Komentar C Style Komentar C-style atau juga disebut komentar beberapa baris diawali dengan /* dan diakhiri dengan */. Komentar ini dapat menjangkau beberapa baris. Contoh : /* this is an example of a C style or multiline comments */ Komentar Khusus javadoc Komentar javadoc memulai baris dengan /** dan mengakhirinya dengan */. Seperti Komentar C_style, dapat juga menjangkau beberapa baris. Komentar ini juga dapat terdiri atas tag-tag untuk menambahkan lebih banyak informasi pada komentar Anda. Contoh : /** This is an example of special java doc comments used for \n generating an html documentation. It uses tags like: @author Florence @version 1.2 */ Blok • Tanda {} (kurung kurawal) di dalam program yang membentuk sekelompok (satu blok) perintah atau komponen lain dalam program digunakan untuk membentuk sebuah struktur pada program seperti class atau method. • Adanya blok program, memungkinkan kita membuat nama variabel dengan nama yang sama. Contoh: Public class hello { //awal blok class } //akhir dari blok class Modifier • Java menggunakan beberapa kata khusus tertentu yang disebut modifiers yang berfungsi Untuk menetapkan property dari data, method, atau class dan bagaimana cara menggunakan nya. Macam-macam modifier yaitu: Class • Setiap program java setidaknya harus memiliki sebuah class karena pada java class adalah struktur program yang paling mendasar. • Format class : Modifier class nama_class{ } • Contoh: Public class hello{ } Privat class hello{ } Method • Sebuah class harus memiliki setidaknya sebuah method. • Class utama dalam program java harus memiliki method utama. • Method harus ada di dalam class dan tidak dapat berdiri sendiri seperti sebuah fungsi diluar class. • Format penulisan nya: Modifier tipe_data_balikan nama_method (parameter){ } Contoh : Public static void hitung(){ } Main Method • Seperti yang telah disebutkan diatas bahwa tiap class harus memiliki method , dan class utama dalam program juga harus memiliki method utama yang disebut juga main method. • Main method ini fungsinya mengontrol seluruh alur dari program sewaktu menjalankan tugasnya. • Contoh : Public static void main (String args [] ){ System.out.println(“Selamat datang di Gundarma”); } Kata Kunci • Pendeklarasian Java adalah case-sensitive. Hal ini berarti bahwa : Hello tidak sama dengan hello. • Kata kunci adalah identifier yang telah dipesan untuk didefinisikan sebelumnya oleh Java untuk tujuan tertentu. Anda tidak dapat menggunakan kata kunci (keyword) sebagai nama variabel,class, method Anda, dsb. • Catatan: true, false, dan null bukan termasuk kata kunci akan tetapi mereka termasuk kata-kata khusus, jadi Anda tidak dapat menggunakan mereka sebagai nama variabel padaprogram Anda. Daftar Kata Kunci dalam JAVA Statement • Statement mempresentasikan sebuah aksi atau sebuah urutan aksi. Dan di akhiri tanda ( ; )titik koma. • Contoh: System.out.println(“Selamat datang di Gunadarma.....”); • Yang akan menghasilkan dicetaknya kalimat yang berada di dalam kurung dan diantara tanda petik Contoh Program JAVA • Contoh Program JAVA sederhana beserta komentar di dalam syntax program. public class Hello { /** * My first java program */ public static void main(String[] args) { //Menampilkan kata "Hello world" dilayar System.out.println("Hello world!"); } } Karakter Escape • Karakter escape adalah karakter yang memiliki fungsi khusus jika dicetak. • Karakter escape ditulis dengan didahului oleh karakter backslash (“\”) • Saat program di compile, ketika compiler java menjumpai (“\”), maka karakter berikutnya akan dianggap sebagai karakter escape. Java mengenal 7 karakter escape, yaitu : • “ \n ” menyatakan tanda pindah baris. Data yang terletak sesudahnya akan dicetak pada baris berikutnya. • “ \t ” menyatakan tanda pindah tabulasi. Data yang terletak sesudahnya akan dicetak pada tabulasi berikutnya. Tabulasi adalah nilai kolom kelipatan 8. • “ \b ” menyatakan tanda backspace. Data yang terletak sesudahnya akan dicetak satu kolom ke kiri. • “ \r ” menyatakan tanda kolom pertama. Data yang terletak sesudahnya akan dicetak pada kolom pertama namun masih pada baris yang sama. • “ \\ ” menyatakan sebuah karakter backslash. • “ \” ” menyatakan sebuah karakter double-qoute atau petik ganda. • “ \’ ” menyatakan sebuah karakter single-quote atau petik tunggal. Tipe Data • Terdapat 8 tipe data primitif, 6 diantaranya adalah tipe bilangan ( 4 tipe integer, 2 tipe floating point), 1 tipe karakter char, dan 1 tipe boolean. 4 Tipe Integer int Tempat yang Diperlukan 4 byte short 2 byte - 32.768 sampai 32.767 long 8 byte -9.223.372.036.854.775.808L 9.223.372.036.854.775.807L byte 1 byte - 128 sampai 127 Tipe Jangkauan (inclusive) - 2.147.483.648 sampai 2.147.483.647 (hanya lebih dari 2 miliar) sampai Tipe Floating-point • Tipe floating-point digunakan untuk merepresentasikan nilai-nilai yang mengandung pecahan atau angka decimal di belakang koma, seperti 3.1416,5.25, dan sebagainya. Bilangan semacam ini disebut sebagai bilangan riil. Dalam Java tipe ini dibedakan menjadi dua jenis, yaitu float, dan double. Tipe float double Tempat Yang Jangkauan Dibutuhkan secara kasar 3,40282347E+38F 4 byte signifikan) 8 byte ( 7 digit desimal secara kasar 1,79769313486231570E+308 (15 digit desimal siignifikan) • Tipe Data Char Tipe data char merupakan tipe untuk menyatakan sebuah karakter. Java menggunakan karakter Unicode untuk merepresentasikan semua karakter yang ada. • Tipe Data Boolean Tipe boolean memiliki nilai true dan false. Tipe ini digunakan untul logical testing dengan menggunakan operator relasional. • Contoh : boolean A = false; Variabel • Variabel adalah item yang digunakan data untuk menyimpan pernyataan objek. Variabel memiliki tipe data dan nama. Tipe data menandakan tipe nilai yang dapat dibentuk oleh variabel itu sendiri. Nama variabel harus mengikuti aturan untuk identifier. • Deklarasi dan Inisialisasi Variabel Untuk deklarasi variabel adalah sebagai berikut, <tipe_data> <name> [=initial value]; Contoh : int bilangan = 10; double A = 3.14; JAVA Literals • Literals adalah tanda bahwa tidak terjadi perubahan atau konstan. • Integer Literals Integer literals dibedakan dalam beberapa format yang berbeda: desimal (berbasis 10), heksadesimal (berbasis 16), and oktal (berbasis 8). Dalam penggunaan tipe data integer pada program, kita harus mengikuti aturan penggunaan beberapa notasi khusus. • Floating-Point Literals Floating point literals mewakili bentuk desimal dengan bagian yang terpisah. Sebagai contoh adalah 3.1415. Floating point literals dapat dinyatakan dalam notasi standard atau scientific. Sebagai contoh, 583.45 dinyatakan dalam notasi standard, Sementara 5.8345e2 dinyatakan dalam notasi scientific. Default Floating point literals mempunyai tipe data double yang dinyatakan dalam 64-bit. Untuk menggunakan ketelitian yang lebih kecil (32-bit) float, hanya dengan menambahkan karakter “f” atau “F”. • Boolean Literals Boolean literals hanya memiliki dua nilai, true atau false. • Character Literals Untuk menggunakan character literals, karakter tersebut di dalam tanda single pute (' ') (single quote delimiters). Sebagai contoh huruf a, diwakili sebagai ‘a’. • String Literals String literals berupa sederetan karakter yang ditulis dalam tanda (“ ”)(double quotes). Contoh string literal adalah, “Hello World”. Operator • Ada operator aritmatika, operator relasi, operator logika, dan operator kondisi. Operator ini mengikuti bermacam-macam prioritas yang pasti sehingga compilernya akan tahu yang mana operator untuk dijalankan lebih dulu dalam kasus beberapa operator yang dipakai bersama-sama dalam satu pernyataan. • Operator Aritmatika • Operator Relasi Operator Relasi membandingkan dua nilai dan menentukan keterhubungan diantara nilai-nilai tersebut. Hasil keluarannya berupa nilai boolean yaitu true atau false. • Operator Logika • Operator logika memiliki satu atau lebih operand boolean yang menghasilkan nilai boolean. Terdapat enam operator logika yaitu: && (logika AND), & (boolean logika AND), || (logika OR), | (boolean logika inclusive OR), ^ (boolean logika exclusive OR), dan ! (logika NOT). • Pernyataan dasar untuk operasi logika adalah, x1 op x2 Dimana x1, x2 dapat menjadi pernyataan boolean. Variabel atau konstanta, dan op adalah salah satu dari operator &&, &, ||, | atau ^. Tabel kebenaran yang akan ditunjukkan selanjutnya, merupakan kesimpulan dari hasil dari setiap operasi untuk semua kombinasi yang mungkin dari x1 dan x2. • && (logika AND) dan & (boolean logika AND) • Operator Kondisi(?:) Operator kondisi ?: adalah operator ternary. Berarti bahwa operator ini membawa tiga argumen yang membentuk suatu ekspresi bersyarat. Struktur pernyataan yang menggunakan operator kondisi adalah, exp1?exp2:exp3 • Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah satunya harus berupa nilai true atau false. Jika exp1 bernilai true, exp2 merupakan hasil operasi. Jika bernilai false, kemudian exp3 merupakan hasil operasinya. • Contoh Program : public class ConditionalOperator { public static void main( String[] args){ String status = ""; int grade = 80; //mendapatkan status pelajar status = (grade >= 60)?"Passed":"Fail"; //print status System.out.println( status ); } } • Hasil keluaran dari program ini akan menjadi, • Passed • Operator Increment dan Decrement Operator increment = sebuah operator menaikkan atau menambahkan nilai dengan 1 (+1). Operator decrement = sebuah operator menurunkan atau mengurangi nilai dengan 1 (-1). • Operator increment dan decrement dapat ditempatkan sebelum atau sesudah operand. • Ketika digunakan sebelum operand, akan menyebabkan variabel diincrement atau didecrement dengan nilai 1, dan kemudian nilai baru digunakan dalam pernyataan dimana dia ditambahkan. Contoh : int i = 10, int j = 3; int k = 0; k = ++j + i; akan menghasilkan k = 4+10 = 14 Ketika operator increment dan decrement ditempatkan setelah operand, nilai variabel yang lama akan digunakan lebih dulu dioperasikan lebih dulu terhadap pernyataan dimana dia ditambahkan. Contoh : int i = 10, int j = 3; int k = 0; k = j++ + i; akan menghasilkan k = 3+10 = 13 Shorthand Assignment Operator Operator Usage Meaning += X += Y X=X+Y -= X -= Y X=X–Y *= X *= Y X=X*Y /= X /= Y X=X/Y %= X %= Y X=X%Y Struktur Kontrol • Struktur Kontrol Keputusan Struktur kontrol keputusan adalah statement dari Java yang mengijinkan user untuk memilih dan mengeksekusi blok kode dan mengabaikan blok kode yang lain. 1. Statement if Statement-if menentukan sebuah statement (atau blok kode) yang akan dieksekusi jika dan hanya jika persyaratan boolean (boolean statement) bernilai true. Bentuk dari statement if : if( boolean_expression ) statement; atau if( boolean_expression ){ statement1; statement2; ... } • Contoh : int nilai = 68; if (nilai > 60) System.out.println (“Anda Lulus”); Atau int nilai = 68; if (nilai > 60) { System.out.println (“Anda Lulus”); System.out.println (“Anda Tidak Lulus”); } 2. Statement if-else Statement if-else digunakan apabila kita ingin mengeksekusi sebuah statement dengan kondisi true dan statement yang lain dengan kondisi false. Bentuk statement if-else : if (boolean_expressions) statement; else statement; Atau if (boolean_expressions){ statement 1; statement 2; ... } else { statement 1; statement 2; ... } • Contoh : int nilai = 68; if (nilai > 60) System.out.println (“Congratulation”); Else System.out.println (“Sorry, You Failed”); Atau int grade = 68; if( grade > 60 ) { System.out.println("Congratulations!"); System.out.println("You passed!"); } else{ System.out.println("Sorry you failed"); } Switch 3. Statement switch Dengan menggunakan switch kita bisa melakukan percabangan dengan persyaratan yang beragam. Bentuk statement switch : switch (switch_expressions){ Case Case_selector 1: Statement 1; // Statement 2; // block 1 ... // ... Break; Case case_selector2: Statement 1; Statement2; ... break; ... default: statement1; // statement2; // block n . . . // break; } • Contoh Program switch Public class programswitch { Public static void main (String [] args) { Int nomor = (int) (Math.random()*7); System.out.println (“nomor = “ + nomor); System.out.print (“hari = “); If (nomor == 0) System.out.println (“Minggu”); Else If (nomor == 1) System.out.println (“Senin”); Else If (nomor == 2) System.out.println (“Selasa”); Else If (nomor == 3) System.out.println (“Rabu”); Else If (nomor == 4) System.out.println (“Kamis”); Else If (nomor == 5) System.out.println (“Jumat”); Else System.out.println (“Sabtu”); } }