LAPORAN RESMI PRAKTIKUM PEMROGRAMAN LANJUT

Dosen Pembimbing : Nur Laila Mubarokah, A.Md.

Nama Mahasiswa : GURUH PUTRO DIRGANTORO 1412110221

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS PGRI RONGGOLAWE TUBAN 2012
i

KATA PENGANTAR

Assalamu’alaikum Wr. Wb. Syukur alhamdulilah kami persembahkan kehadirat Allah SWT yang telah mencurahkan rahmat dan karunianya, sehingga penulis dapat menyelesaikan makalah Praktikum Pemrograman Lanjut ini dengan judul “PRAKTIKUM PEMROGRAMAN LANJUT”. Untuk itu kami mengucapkan terima kasih terhadap semua pihak yang telah membantu hingga terselesaikannya makalah ini. Terutama kami ucapkan kepada :     Ibu Nur Laila Mubarokah, A.Md., selaku dosen pengampuh Praktikum Pemrogramn Lanjut Teknik Informatika angkatan 2011 E. Kakak pendamping dosen yang diantara : Aditya, Vina, Tiyan. Kedua orang tua kami, atas segala dukungan yang telah diberikan. Rekan-rekan mahasiswa-mahasiswi Teknik Informatika Unversitas Ronggolawe Tuban, atas segala dukungannya.

Makalah ini saya susun sebagai tugas mata kuliah Praktikum Pemrograman Lanjut. Tak ada gading yang tak retak, demikian pepatah mengatakan. Demikian juga kiranya makalah ini, tentu masih banyak kekurangan. Oleh karena itu, penulis mengharapkan saran dan kritik dari pembaca demi sempurnanya makalah kami yang akan datang. Akhirnya, mudah-mudahan karya tulis ini bermanfaat bagi mahasiswa khususnya, dan bagi seluruh komponen bangsa Indonesia umumnya. Wassalamu’alaikum Wr.Wb.

Tuban, 6 Juni 2012

Penulis

ii

DAFTAR ISI
KATA PENGANTAR ............................................................................................ ii DAFTAR ISI .......................................................................................................... iii DAFTAR GAMBAR ............................................................................................ vii BAB I PENDAHULUAN ....................................................................................... 1 1.1 1.2 1.3 Latar Belakang ......................................................................................... 1 Tujuan Praktikum ..................................................................................... 1 Manfaat Praktikum ................................................................................... 2

BAB II TINJAUAN PUSTAKA............................................................................. 3 2.1 Pengenalan JAVA dan Lingkungan Kerja ............................................... 3 Pengertian Bahasa Pemrograman JAVA .......................................... 3 Sejarah Singkat Pemrograman JAVA ............................................... 3 Karakteristik Bahasa Pemrograman Java .......................................... 4 Compiler dan Interpreter Pada Java .................................................. 6

2.1.1 2.1.2 2.1.3 2.1.4 2.2

Elemen Dasar Pemrograman JAVA ......................................................... 8 Keyword ............................................................................................ 8 Identifier dan Variabel ...................................................................... 9 Tipe data dan Perubahan Tipe Data .................................................. 9 Komentar Pada java ........................................................................ 10 Instruksi Dasar Pemrograman Java ................................................. 10

2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.3

Operator .................................................................................................. 13 Operator Aritmatika ........................................................................ 13 Increment and decrement ................................................................ 14 Operator Bitwise ............................................................................. 15 Operator Boolean ............................................................................ 16 Operator Logika .............................................................................. 16 Operator Shift .................................................................................. 17 Operator Kombinasi ........................................................................ 17

2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7

iii

........7 Pengenalan IDE Pada JAVA . 37 Menganalisa script latihan pertama .......................... 18 2.....1 4........................................................................... 37 Menganalisa script latihan kedua ......8 Pemrograman Berbasis Objek Pada JAVA ........2.................................................. 20 Perulangan menggunakan WHILE .........................6 2.......................................1 3............................................. 19 2.........................................................3 3.........................9 2........ 31 Pengesetan PATH dan CLASSPATH ................... 19 2...................................3 2.............4...........................................1 Percabangan If ........ 26 2.............5 Percobaan Menampilkan biodata ............................................3 Percabangan else – if............................ 24 2.................1 2.................. 42 iv ..................................... 29 BAB III PENGENALAN JAVA DAN RUANG LINGKUP KERJA ...2 Menampilkan nilai default dari masing-masing tipe data ................. 33 Menampilkan Suatu Tulisan Ke Layar ..............................5............................................................3.........................1 Komponen AWT ...............................................2 3......................... 24 2...............4 Instalasi JDK .............................5............1..........7........................7...... 21 2.....................2 Komponen Swing .............................4 Percabangan Switch ...........................................4........4................................................................. 39 BAB IV ELEMEN DASAR PEMROGRAMAN JAVA .......... 41 Nilai maksimal masing-masing tipe data ......................................... 36 Menganalisa dan Membenahi Kesalahan Pada Program........................8 2. 17 Operator Penugasan ........................ 21 Perulangan menggunakan DO WHILE ................4..........................................1 Menampilkan Nilai Default dan Nilai Maksimal Dari Tipe Data Primitif 41 4................. 22 Pemrograman Visual Pada JAVA ....................................4..........1 3....................................3. 18 Percabangan ... 20 2.. 31 3....1.................... 41 4........2 Percabangan If-else ....4 Operator Kondisional ..................................4.....................................2 2.....................................1 3...................5 Perulangan .................. 20 Perulangan menggunakan FOR ...................................... 38 3....5..... 18 2......................................

. 62 Menampilkan Biodata Mahasiswa ............3 Menampilkan Bilangan Faktorial dengan Do ....................................................3............................. 47 4.................................................3 Pemakaian Label pada Kondisi Continue .... if – else ..........................................3 4... 66 7...... 52 5....4............... 56 Menggunakan Boolean Or ......................................... 52 Melakukan Increment dan decrement Nilai ...5 4...........1 Menampilkan Bilangan Faktorial dengan For........ 60 Menentukan Bilangan Genap dan Ganjil ..................... 53 Melakukan Operasi Bit .....2 5.......1 4.......................................5 5....................................................3....While ............................ Int_Awal...............................3 6............................ 64 BAB VII PERULANGAN ................................................................... 46 Membaca Karakter Dengan Int Read(Byte B[].................................... 68 7.................. 66 7................................ 55 Menggunakan Operator Boolean And .........................2 Perulangan dengan Break .......... 51 BAB V OPERATOR .1 Percabangan Menggunakan if .....3....... dan else if ... 46 4.....................................................................4 5........5 Percabangan Menggunakan Switch..............2 4.................1 Menampilkan Bilangan Faktorial ............. 54 Menggunakan Logika Operator ...............................6 Membaca Input Melalui Data Input Stream ........2 Membaca Beberapa Karakter .....................................4 Membaca dengan Int Read ( Byte b[ ] ) ...................3............. 67 7.........3 5.............3................................ Int_Panjang) ...... 49 Memanfaatkan Argumen String Args[ ] ......................... 45 4....................1 5........................................1.................................................................................................................... 71 v ................. 71 7.............3.................2 6.......................6 Menguji Operator Aritmatika ............ 59 6. 66 7........................2 Menampilkan Bilangan Faktorial dengan While ..................................................................................... 57 BAB VI PERCABANGAN ........... 44 Memberikan Nilai Input Pada Program .........1......1.........................................3 Memberikan Nilai / Literal Pada Variable ......................................... 59 6................................... 45 Membaca Satu Karakter ..........................................................

............................................... 73 Menampilkan Susunan Setengah Segitiga Terbalik .....................................................................................................................4 Instalasi Netbeans IDE .................................4....................1 11.............................................1 Bekerja Menu............................................................... 99 Membuat Program Data Mahasiswa ...................................................1 7................................................3 Judul Program ................. 112 10.......................................................2 7............................................................................4 8...................................................3 8..................................... 112 BAB XI PROGRAM ABSENSI MATA PELAJARAN ..... 88 Membuat Program Biodata Mahasiswa Java GUI pada NetBeans IDE 92 BAB IX PEMROGRAMAN VISUAL PADA JAVA ....4 Menampilkan Susunan Deretan Karakter .................... 73 Menampilkan susunan segi empat ............... 77 8................................................................. 117 Alur Program ............................1 12.. PopUp Menu dan Toolbar ..................... 73 Menampilkan Susunan Setengah Segi Tiga .................... 77 Menjalakan Java Console pada NetBeans IDE .................3 7.......... 85 Membuat Program Penjumlahan Java GUI pada NetBeans IDE ............................................... 152 LAMPIRAN ..........4.......... 75 BAB VIII PENGENALAN IDE PADA JAVA ............4.....1 9.... 117 11.......2 8......................................................... 117 Latar Belakang .................................. 117 BAB XII PENUTUP ......................... 99 9......... 106 BAB X PEMROGRAMAN BERBASIS OBJEK PADA JAVA ......................................3 Program Aplikasi Hitung Sederhana ........2 9......1 8. 103 Program Aplikasi Sederhana ............................5 Menampilkan Deret Bilangan Prima Dengan Batasan Sesuai Inputan ................ 150 12..................................... 154 vi ...........2 Kesimpulan ...... 151 DAFTAR PUSTAKA ...... 150 Saran ........7............................... 81 Menjalankan Java GUI pada NetBeans IDE ......................................................................................................................2 11.................. 74 7...................

........ 18 Gambar 2...........................................................................11 JAVA Compile GuruhPutroDirgantoro.......................exe dan tools jar .............1 Letak File JDK ....................................... 33 Gambar 3........................................................................5 Flowchart perulangan while ..7 Tampilan gambar komponen pemrograman visual AWT .. 35 Gambar 3.DAFTAR GAMBAR Gambar 2...........11 Tampilan Dari Komponen Swing Windows ..... 31 Gambar 3..................8 Pengesetan PATH untuk Java pada Command Prompt ... 29 Gambar 3................. 27 Gambar 2.................... 31 Gambar 3.... 28 Gambar 2................................................. 34 Gambar 3..........6 Flowchart perulangan do.........else ...4 Flowchat perulangan for...................... 36 Gambar 3..............12 Tampilan Macam Komponen Dari Swing Fillers ........................................................................................................ 28 Gambar 2............... 33 Gambar 3.........................10 Tampilan Gambar Macam Komponen Swing Menus ... 25 Gambar 2.... 35 Gambar 3................ 22 Gambar 2............10 mengecek pengesetan PATH dan CLASSPATH .............................7 Langkah membuka Command Prompt .......................3 Jendela Custom Setup ..9 Tampilan Gambar Macam Komponen Swing Controls ......................................................................3 Tampilan flowchart percabangan if ..... 32 Gambar 3...................9 Pengesetan CLASSPATH untuk Java pada Command Prompt ...........8 Tampilan Komponen Swing Containers .............5 Jendela tampilan Complete instalasi .........................................................java ................... 7 Gambar 2... 19 Gambar 2......................................4 Tampilan Progress install JDK.............................. 32 Gambar 3..........................2 Jendela utama penginstalan JDK.......12 Jalankan program GuruhPutroDirgantoro ....... 34 Gambar 3....................................6 Letak file java........ 36 vii ....2 Tampilan flowchart percabangan if....... 21 Gambar 2....while... 21 Gambar 2....1 Langkah-langkah kompilasi dan eksekusi program Java ..... 26 Gambar 2.......

...15 Tampilan hasil menganalisa dan membenahi kesalahn pada program ......................................6 Tampilan Hasil Compile Membaca Input Dengan Int Read ( Byte B [ ] ) ......... 50 Gambar 4.....java ............... If – Else ...2 Tampilan Output Dari Percabangan Switch ............................................ 37 Gambar 3.3 Tampilan Output Program Untuk Menentukan Bilangan Genap Dan Ganjil ........................1 Tampilan Output Program Percabangan If ...................... 64 viii ...........................................9 Tampilan Hasil Compile Program Input Data Dengan Inputstream .3 Tampilan EdoBiodata........................... 46 Gambar 4..........................java ................................ 62 Gambar 6......................................................... 44 Gambar 4..........4 Tampilan Output Program Menentukan Bilangan Prima ........16 Tampilan menampilkan kalimat biodata kelayar ...............................4 Tampilan Output Dari Program Operator Logika .....................4 Tampilan Hasil Membaca Lebih Dari Satu Karakter ........................................................ 43 Gambar 4................................................. 45 Gambar 4.....................5 Tampilan Output Dari Program Boolean And ................................ 38 Gambar 3... 53 Gambar 5.........Gambar 3.1 Tampilan EdoDefaultValue.... 41 Gambar 4................................................5 Tampilan Hasil Compile Membaca Input Dengan String buffer .......................................1 Tampilan Hasil Uji Operator Aritmatika ..........2 Tampilan Hasil Uji Coba Operator Increment Dan Decrement .......................................................................................13 Kompilasi program JAVA yang terdapat kesalahan ..10 Tampilan Hasil compile Interpreter Memanfaatkan Argument String Args[ ] .. 47 Gambar 4............................... 56 Gambar 5............6 Tampilan Output Dari Program Boolean Or ... 61 Gambar 6.....14 Tampilan hasil menganalisa dan membenahi kesalahan pada program ......... 51 Gambar 5........2 Tampilan EdoMaxVariableDemo..............................Dan Else – If 60 Gambar 6.java...... 58 Gambar 6....... 57 Gambar 5........................................3 Tampilan Output Dari Uji Operator Bitwise ............................................................ 54 Gambar 5.................. 55 Gambar 5.............................................................. 39 Gambar 3.................. 40 Gambar 4....................

Gambar 6.5 Tampilan Output Program Menampilkan Biodata Mahasiswa ......... 65 Gambar 7.1 Menampilkan Bilangan Faktorial dengan For ................................... 67 Gambar 7.2 Menampilkan Bilangan Faktorial dengan While ............................. 68 Gambar 7.3 Menampilkan Bilangan Faktorial dengan Do - While ...................... 69 Gambar 7.4 Tampilan Output Program Perulangan Dengan Break ...................... 71 Gambar 7.5 Tampilan Output Dari Program Looping Dengan Continue Label ... 72 Gambar 7.6 Tampilan Output Dari Susunan Segi Empat ..................................... 73 Gambar 7.7 Tampilan Output Program susunan Setengah Segitiga ..................... 74 Gambar 7.8 Tampilan Dari Output Program Setengah Segitiga Terbalik ............ 75 Gambar 7.9 Tampilan Dari Output Program Deret Bilangan Prima ..................... 76 Gambar 8.1 Tampilan Installer Netbeans 7.0.1-Ml-Windows Pada Localdisk (D:) ............................................................................................................................... 77 Gambar 8.2 Tampilan Proses Konfigurasi System. ............................................. 77 Gambar 8.3 Tampilan Configurasi IDE ................................................................ 77 Gambar 8.4 Tampilan Welcome Pada Saat Instalasi Netbeans IDE ..................... 78 Gambar 8.5 Tampilan License Agreement Pada Saat Instalasi Netbeans IDE ..... 78 Gambar 8.6 Tampilan JUnit License Agreement ................................................. 79 Gambar 8.7 Tampilan NetBeans 7.01 Installation JDK....................................... 79 Gambar 8.8 Tampilan Dari Glassfish 3.1 Instalasi ............................................... 79 Gambar 8.9 Tampilan Dari Summary Dan Total Ukuran Memori Instalasi......... 80 Gambar 8.10 Tampilan Proses Installation Netbeans Dan Runtimes ................... 80 Gambar 8.11 Tampilan Instalation Netbeans Completed Successfully ................ 80 Gambar 8.12 Tampilan Dari Start-Up Netbeans IDE 7.0.1 .................................. 81 Gambar 8.13 Tampilan Dari Start Page Netbeans 7.0.1 ...................................... 81 Gambar 8.14 Tampilan Start Up Home Netbeans IDE 7.0.1 ................................ 82 Gambar 8.15 Tampilan Dari Menu File – New Project ........................................ 82

ix

Gambar 8.16 Tampilan New Project ..................................................................... 82 Gambar 8.17 Tampilan New Java Aplication ....................................................... 83 Gambar 8.18 Tampilan Memilih Java Class ......................................................... 83 Gambar 8.18 Tampilan memilih tempat penyimpanan java class ........................ 84 Gambar 8.19 Tampilan mengisi aplikasi .............................................................. 84 Gambar 8.19 Tampilan save program dan menjalankan program ........................ 85 Gambar 8.20 Tampilan Jendela New File Untuk Memilih Java GUI ................... 85 Gambar 8.21 Tampilan Jendela New Jframe Form .............................................. 86 Gambar 8.22 Tampilan Program Menampilkan Nama Saya ................................ 86 Gambar 8.23 Tampilan Cara Memberikan Action Pada Button ........................... 86 Gambar 8.24 Tampilan Letak Action Button Kita Pada Source Program ............ 87 Gambar 8.25 Tampilan GUI Program Menampilkan Nama Lengkap Saya ......... 87 Gambar 8.26 Tampilan Hasil Program GUI Menampilkan Nama Saya Setelah Di Klik OK ................................................................................................................. 87 Gambar 8.27 Tampilan Jendela New File Untuk Memilih Java GUI untuk membuat program penjumlahan ............................................................................ 88 Gambar 8.28 Tampilan Jendela New Jframe Form .............................................. 88 Gambar 8.29Tampilan Program Menampilkan Penjumlahan 2 Angka ................ 89 Gambar 8.30 Tampilan Cara Memberikan Action Pada Button ........................... 89 Gambar 8.31 Tampilan Letak Action Button 1 Kita Pada Source Program ......... 90 Gambar 8.32 Tampilan Desain Program ............................................................... 90 Gambar 8.33 Tampilan Cara Memberikan Action Pada Button2 ......................... 90 Gambar 8.34 Tampilan Letak Action Button 2 Kita Pada Source Program ........ 91 Gambar 8.35 Tampilan program setelah dijalankan ............................................. 91 Gambar 8.36 Tampilan program setelah di isi nilai dan di jalankan .................... 91 Gambar 8.37 Tampilan program setelah isi nilai di Hapus ................................... 92

x

Gambar 8.38 Tampilan Jendela New File Untuk Memilih Java GUI ................... 92 Gambar 8.39 Tampilan Jendela New Jframe Form .............................................. 93 Gambar 8.40 Tampilan Program Menampilkan Biodata Mahasiswa ................... 93 Gambar 8.41 Tampilan Cara Memberikan Action Pada Button 1 ........................ 93 Gambar 8.42 Tampilan Letak Action Button 1 Kita Pada Source Program ......... 94 Gambar 8.43 Tampilan Desain Program ............................................................... 94 Gambar 8.44 Tampilan Cara Memberikan Action Pada Button 2 ........................ 95 Gambar 8.45 Tampilan Letak Action Button 2 Kita Pada Source Program ........ 95 Gambar 8.46 Tampilan Desain Program .............................................................. 96 Gambar 8.47 Tampilan Cara Memberikan Action Pada Button 3 ....................... 96 Gambar 8.48 Tampilan Letak Action Button 3 Kita Pada Source Program ........ 96 Gambar 8.50 Tampilan program setelah dijalankan ............................................ 97 Gambar 8.51 Tampilan program setelah di isi Biodata Mahasiswa...................... 97 Gambar 8.52 Tampilan program setelah isi biodata di Hapus .............................. 98 Gambar 9.1 Tampilan GUI Aplikasi Hitung Sederhana ....................................... 99 Gambar 9.2 Tampilan Program Hitung Sederhana ............................................. 100 Gambar 9.3 Tampilan Hasil Program Hitung Aritmatika Penjumlahan ............. 101 Gambar 9.4 Tampilan Hasil Program Hitung Pengurangan ............................... 101 Gambar 9.5 Tampilan Hasil Program Hitung Perkalian ..................................... 102 Gambar 9.6 Tampilan Hasil Program Hitung Pembagian .................................. 102 Gambar 9.7 Tampilan Hasil Program Setelah Di Klik Tombol Hapus............... 103 Gambar 9.8 Tampilan GUI Program Biodata Mahasiswa Pada Netbeans.......... 103 Gambar 9.9 Tampilan Cara Memberi Action Pada Button Save ........................ 104 Gambar 9.10 Tampilan Interface Program Biodata Mahasiswa ......................... 105 Gambar 9.11 Tampilan Input Data Pada Program Biodata Mahasiswa.............. 105 Gambar 9.12 Tampilan Program Aplikasi Sederhana Pendaftaran Online......... 106 xi

...................... 133 Gambar 11................................................................... 145 xii . 112 Gambar 10........6 Tampilan halaman awal untuk memilih kelas ............................... 109 Gambar 10..............................7 Tampilan memilih kelas untuk mengetahui mapel .....3 Tampilan Input Data Pada Program Popup Menu ...8 Memilih tanggal absensi .......................................Gambar 9...2 Tampilan Jendela Image Chooser Icon ................................................................... 124 Gambar 11...... 121 Gambar 11................. 108 Gambar 9....................... 117 Gambar 11......... 113 Gambar 10.....2 Tampilan Login ...................... 127 Gambar 11............................. 117 Gambar 11....10 Tampilan nama siswa yang tidak hadir ...1 Tampilan awal program ...... 145 Gambar 11...................................................................... 131 Gambar 11................ 131 Gambar 11........ 108 Gambar 9....... 144 Gambar 11...........12 Memilih nama siswa untuk report .................13 Peringatan untuk memasukkan nama siswa ..................14 Peringatan untuk memasukkan nama siswa .............4 Tampilan halaman daftar guru .......15 Tampilan Halaman Kedua Program Pendaftaran Online ..............13 Tampilan untuk membuat tampilan bulan secara manual ........................... 144 Gambar 11................................................... 119 Gambar 11............................................9 Memilih nama siswa tidak hadir ............14 Tampilan untuk mengimputkan tampilan bulan..................3 Tampilan menu aplikasi ............................................ Popup Menu Dan Menu ...............1 Tampilan Program Yang Menggunakan Toolbar.................5 Tampilan halaman daftar siswa ....4 Tampilan menu toolbar pendaftaran baru ..............................................................................6 Tampilan halaman daftar mata pelajaran ................... 132 Gambar 11...................................................................... 113 Gambar 11....... 112 Gambar 10.................. 132 Gambar 11...................11 Halaman report ................

Mahasiswa mampu membuat program sederhana dengan JAVA e. Dalam pratikum pemograman lanjut ini akan membahas materi tentang Java dari sejarahnya sampai pengunaanpengunaan fungsinya. Mahasiswa dapat menganalisa beberapa permasalahan yang terjadi saat pemrograman dan memberikan solusi g. Menambah pengetahuan tetang java yang lebih detail dan implementasinya. 1.1 Latar Belakang Dalam dunia perkuliahan. d. tetapi mahasiswa juga memelukan praktek-praktek tetang pemograman lanjut ini untuk mempermudah pemahaman masing-masing fungsinya. Melatih diri untuk mengerjakan secara mandiri. Agar mahasiswa menjadi lebih aktif. Praktikum pemrograman lanjut adalah praktikum yang di khususkan untuk para mahasiswa agar mampu bersaing di dunia computer yang pada zaman ke zaman semakin meningkat pesat perkembangannya. Praktikum pemrograman lanjut dilaksanakan karena mahasiswa kurang memahami jika hanya menerima teori saja.BAB I PENDAHULUAN 1.tetapi juga harus dimbangi dengan praktek sebagai sarana awal implementasi yang sudah didapatkan dari mata perkuliahan. seorang Mahasiswa tidak hanya cukup mendapatkan pembekalan berupa materi perkuliahan.2 Tujuan Praktikum Tujuan praktikum pemrograman lanjut diantaranya : a. Dapat mengerti dan memahami Elemen – elemen dasar pemrograman JAVA h. b. Oleh karena itu tidak cukup dengan mateti-materi saja. Mahasiswa mampu mengkompilasi dan menjalankan program JAVA f. c. Mahasiswa dapat memahami berbagai macam jenis operator yang ada di JAVA 1 .

3 Manfaat Praktikum Dengan dilaksanakannya praktikum program lanjut ini. Mahasiswa mendapat ilmu dan pengetahuan yang tidak berupa materi dan teori saja. Mahasiswa mampu membuat program console dan GUI pada NetBeansIDE m. Praktikum memberikan kesempatan kepada mahasiswa untuk menguji coba apa yang didapat dari perkuliahan praktikum juga menunjang mahasiswa supaya mudah mengerti dengan program-program praktikum selanjutnya 2 . Mahasiswa dapat membuat aplikasi sederhana dengan menggunakan NetBeansIDE o. Mahasiswa dapat membuat aplikasi frame sederhana sendiri 1.i. Mahasiswa mahir menuliskan program JAVA pada pemrograman visual dengan NetBeans n. Mahasiswa memahami logika perulangan serta memakai perulangan yang tepat dalam program JAVA k. Mahasiswa memahami berbagai macam percabangan yang ada di JAVA seta cara penggunannya j. Mahasiswa mengenal dan mempersiapkan IDE pada JAVA l.

Kebutuhan untuk fleksibilitas. bahasa harus berukuran kecil dan mengandung kode yang liat. Untuk merunning program.1.class. liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba.1 Pengenalan JAVA dan Lingkungan Kerja Pengertian Bahasa Pemrograman JAVA Salah satu bahasa pemrograman komputer adalah adalah bahasa pemrograman Java. Untuk mengembangkan program Java dibutuhkan JDK. kecil. kita dapat menulis source code pada teks editor yang kemudian disimpan dalam file berekstension . Cris Warth dan rekan-rekan lainnya di Sun Microsystem. 2. Untuk membuat program dengan bahasa java. kita gunakan perintah java.1 2. Kompiler dan interpreter untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh Sun Microsystems. Juga karena manufaktur – manufaktur berbeda memilih processor yang berbeda pula. Proyek diberi nama kode ”Green”.1. Java diciptakan berdasarkan bahasa C++ dengan tujuan dapat dijalankan pada berbagai jenis hardware tanpa kompilasi ulang. sehingga didapatkan sebuah file berekstension . Bahasa pemrograman Java adalah salah satu bahasa pemrograman komputer yang berorientasi objek (Object Oriented Programming). Selanjutnya kita mengcompile source code tersebut dengan perintah javac. Java pertama kali dikonsepkan oleh James Gosling. maka bahasa harus bebas dari manufaktur manapun.2 Sejarah Singkat Pemrograman JAVA Pada 1991.BAB II TINJAUAN PUSTAKA 2. Karena perangkat tersebut tidak memiliki banyak memori. Interpreter untuk program Java sendiri sering juga disebut Java Runtime Environment (JRE) atau Java Virtual Machine.java. 3 . diciptakan oleh satu tim dari perusahaan Sun Microsystem. sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja. Patrick Naughton. sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box.

Java juga menggunakan automatic memory allocation dan memory garbage collection. pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Sederhana (Simple) Bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance. Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya.3 Karakteristik Bahasa Pemrograman Java Berdasarkan white paper resmi dari SUN.Niklaus Wirth. namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya. Karena orang – orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++. 2. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama JAVA. 4 . serta mengadopsi orientasi objek dan bukan prosedural. Mesin ini sering disebut dengan mesin maya (virtual machine). Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi.1. kemudian SUN menggantinya dengan JAVA. Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin. Java memiliki karakteristik berikut : 1.

Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual Machine. Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut. Architecture Neutral Program Java merupakan platform independent. 7. Terdistribusi (Distributed) Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi pada Java. 5 . Robust Java mempuyai reliabilitas yang tinggi. Java dapat digunakan untuk mendistribusikan data atau informasi dalam workstation client. yaitu teknologi jaringan lokal seperti jaringan internet. 3. 6.2. Dan Program Java sesuai dengan perkembangan teknologi saat ini. Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda. dan web server. 4. Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman. e-mail server. database server. Compiler pada Java mempunyai kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Secure Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi. 5. Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut. Interpreted Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Berorientasi objek (Object Oriented) Java mengunakan pemrograman berorientasi objek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali.

8. Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut. dan Solaris. Linux. MacOS. Performance Performance pada Java sering dikatakan kurang tinggi.4 Compiler dan Interpreter Pada Java Java mempunyai file sistem yang digunakan untuk melakukan compiler dan interpreter.1. Sekali menulis program dalam bahasa Java dan mengkompilasinya maka program tersebut dapat dijalankan pada berbagai Praktikum Pemrograman Lanjut. 2. Multithreaded Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan. 11. yang semuanya mendukung program Java dalam melakukan tugasnya. Compiler dan interpreter adalah suatu sistem yang menerjemahkan bahsa sumber (source language) menjadi bahasa sasaran (target language). 6 . Dynamic Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Proses penerjemahan sering disebut kompilasi. Multiplatform Program Java yang sudah diterjemahkan dengan benar dan berhasil dapat dijalankan pada platform yang lain atau pada Praktikum Pemrograman Lanjut yang lain. 9. seperti DOS. microsoft ataupun symantec yang menggunakan Just In Time Compiler 10. Namun performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan inprise. Windows.

Jcreator. Hasil Kompilasi Setelah membuat dan menyimpan kode program. Mengeksekusi Program. akan menghasilkan program Hasil Kompilasi Namafile class Jika ada runtime atau logic error Mengeksekusi Program Dengan Interpreter Hasil Besar Jika BENAR tidak ada lagi runtime eror Gambar 2. Source Code Source Code adalah file sumber yang dituliskan dengan extensions Java yang akan kompilasi. Artinya menjalankan program setelah dilakukan compile atau sering disebut run program. Kompilasi Program adalah mengkompilasi dari file sumber menjadi file dengan extensions class 3. dalam hal ini anda menuliskan sebuah program Java dengan menggunakan teks editor (contoh: Notepad. dll) 2. kompilasi file berisi kode program tersebut dengan mengunakan java compiler.Langkah-langkah Kompilasi dan Eksekusi Program Java Source Code Jika salah lakukan perbaikan Kompilasi Program Apabila Benar. Berkas yang mengandung byte code tersebut kemudian akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan. Hasil dari kompilasi berupa berkas byte code dengan extensi class 4. 7 . Kompilasi Program.1 Langkah-langkah kompilasi dan eksekusi program Java Keterangan : 1.

2 Elemen Dasar Pemrograman JAVA Program adalah susunan instruksi dalam suatu bahasa pemrograman yang menjelaskan kepada mesin (komputer) bagaimana melakukan suatu proses terhadap data. Data diwakili oleh variable dan instruksi diwakili oleh command (perintah) atau keyword (kata kunci).. Setiap variabel harus diberi nama yang dilengkapi dengan tipe data dan melalui satu instruksi diberikn nilai. sedangkan instruksi dinyatakan sebagai baris perintah yang merupakan suatu ekspresi matematis atau dalam bentuk command/keyword yang bisa melibatkan variabel atau konstanta. Ada dua elemen utama suatu program.5. yaitu data dan instruksi. Beberapa keyword yang adadi java adalah sebagai berikut : abstract char double float instance null short boolean class else for int package static break const extends goto interface private strictfp throw byte continue false if long protected super throws case default final implements native public switch catch do finally import new return while synchronized this void volatile transient true try 8 . 2.2.1 Keyword Keyword merupakan kata-kata yang dikenal oleh kompiler Java dan memiliki arti khusus pada program. Hasil Program. Hasil program dapat diperoleh setelah dikompile dan pengeksekusian berhasil (Tidak ada kesalahan) 2.

int. Tipe data primitif ialah tipe data dasar untuk data tunggal. Beberapa contoh tipe data primitif adalah Boolean. beberapa bentuk literal antara lain : a. Untuk memberikan penamaan (identifier). Tipe data primitif. atau lambang dolar ( $ ). Nilai bilangan Boolean d. dan method. Variabel digunakan untuk menyimpan sebuah nilai yang dapat diubah. 3. Tidak ada batasan panjang (tapi usahakan jangan membingungkan dalam pemberian nama). 2. Identifier harus diawali degan huruf.3 Tipe data dan Perubahan Tipe Data Pada java tipe data dibrdakan menjadi 2 yaitu : 1. garis bawah ( _ ). char. Nilai String 2. kita dapat mengikuti aturan yang sudah ditentukan sebagai berikut : 1. 9 .2. byte. Hindari pemakaian operator yang ada di Java. Setiap variabel harus diberi nama yang dilengkapi dengan tipe data dan melalui suatu instruksi diberikan nilai. Nilai untuk karakter e. Tipe data kompleks/referensi Tipe data kompleks adalah bentukan tipe data yang termasuk jenis kompleks/referensi.2 Identifier dan Variabel Identifier merupakan identitas atau nama yang diberi untuk menamai class. Identifier bukan yang dikenal pada kata kunci (Keyword) pada Java. short. 4. interface. Sedangkan variabel adalah sifat dari sebuah data yang dimiliki oleh sebuah objek. long dan double 2. Nilai bilangan riel c.2. variabel.2. Nilai yang diberikan pada variabel disebut dengan Literal. Nilai bilangan bulat b. Contoh type data kompleks antara lain : String dan array.

2. 2.5 Instruksi Dasar Pemrograman Java Instruksi dinyatakan sebagai baris perintah yang merupakan suatu ekspresi matematis atau dalam bentuk command/keyword yang bisa melibatkan variabel atau konstanta.println(“Data String yang akan ditampilkan”). statement. Instruksi Output Bentuk umum instruksi output adalah System. banyak catatan yang ditulis pada kode dengan tujuan sebagai bahan dokumentasi. pembuat program. diantaranya adalah : a. Instruksi-instruksi dasar pada Java diantaranya : 1.2. proses. tanda yang digunakan adalah : // : tanda komentar untuk satu baris /* diakhiri */ : tanda komentar untuk yang memungkinkan digunakan untuk lebih dari satu baris.2. dan lainnya yang ada hubungannya dengan program. B = „A‟. Contoh : A = 1. Instruksi Penugasan Bentuk umumya adalah variabel = ekspresi.4 Komentar Pada java Komentar adalah suatu pernyataan yang tidak ada pengaruhnya terhadap proses. Untuk menambahkan komentar kedalam program. Instruksi Input Ada beberapa bentuk instruksi input pada Java.Casting merupakan perubahan tipe data yang dimanipulasi dari satu objek ke objek lain yang tidak sesuai. Komentar dalam pemrograman biasanya enjelaskan singkat program. 2. Alam pemrograman.out. 3. Membaca satu karakter class bacaHuruf{ public static viod main(String args[]){ 10 .

(buf).out.out. int .in.pead(c). String s=new String(buf.} c.in.println(“Error:“+e.read())!=‟\n‟){ s.println(s).}}} (Exception e){System.toString()).out. try{ System.toString()). 11 read(byte b[].println(“Error: “+e.char input=(char)-1.println(“error b.} System.0).out.)}} Membaca dengan int read(byte b[]) class bacaData2{ public static void main(String args[]) byte buf[]= new byte[80].}} d.}} cath(Exception e){ System.in. Membaca dengan int panjang) class bacaData3{ public static void main (String args[]){ byte buf[]= new byte[10]. try{ input=(char)System. char c. System.} Cath(Exception e){ System.println(s.read. try{ while((c=(char)System.read().} catch ”+e).out. int awal. Membaca beberapa karakter class bacaData1{ public static void main (String args[]) StringBuffer s=new StringBuffer().

parseInt(kalimat).out.println(huruf).read(buf.out. System.} catch(IOException e){System. 12 .} /* menerima Sting dari input – stream */ try{ System.println(angka).println(e).out.out.println(“Enter some words:”).} catch(Exception e){ System. /*menerima input Stream lalu dirubah ke Interger*/ try{ System.readLine().println(kalimat). String kalimat =“ “.try{ System.0.0).out.} catch (IOException e){System.} /* menerima karakter dari input – stream */ try{ System.}} Membaca melalui DataInputStream class in_out{ public static void main(Sting args[]){ DataInputStream in = new DataInputStream (System.out.out.} /* hasil input di tampilan */ System.in.} String s=new String(buf.out.out.readLine().out.in).}} are what you type in:”)System. char huruf =„ ‟. kalimat = in.toSting()).println(e).10). int angka =0.println(“Enter a character:”).println(s). kalimat=in. System.out. e.println(Enter a number:“).readLine (). angka = Interger. huruf = kalimat chatAt(0).println(e).} catch(IOException e){System. kalimat = in.println(“Here System. char c.println(“Error:“+e.out.

}} ) . Operator Java merupakan karakter khusus yang berupa simbol atau tanda yang memerintahkan compiler untuk melakukan berbagai operasi terhadap sejumlah operand. 2. Bahasa menyediakan operator-operator aritmatika untuk manipulasi variabel data. Java mempunyai berbagai macam jenis operator yang dapat digolongkan menjadi operator aritmatika. Memanfaatkan argumen String args[] class contohArgumen { public static void main ( Sring args [] ) { int i = Integer.f. pernyataan. Perintah operasi dispesifikasikan oleh operator yang operandnya adalah variabel. System. atau besaran literal. Jalankan program tersebut kemudian masukkan angka pada argumennya. kombinasi. Sedangkan Operand adalah suatu variabel (angka atau karakter) yang akan dioperasikan (diproses) oleh operator untuk mengetahui hasil. increment-decrement. shift (geser). 13 . Unary Operator adalah operator yang hanya melibatkan satu operand. dan kondisi. yaitu Unary Operator dan Binary Operator.perseInt ( args [ 0 ] int hasil = i * j .perseInt ( args [ 1 ] ) . int j = Integer.3. logica.out.1 Operator Aritmatika Operator mengoperasikan aritmatika perhitungan adalah operator yang digunakan pemrograman untuk Java (aritmatika). sedangkan Binary Operator adalah operator yang melibatkan dua operand.println ( “ Hasil kali = “ + hasil ) . Misalnya : Java ContohArgumen 5 * 8 < enter > Hasil kali = 40 2. boolean. penugasan. Operator dapat diklasifikasikan menjadi 2 bentuk.3 Operator Operator adalah karakter khusus yang berupa simbol atau tanda yang digunakan untuk mengoperasikan (memproses) dua operand atau lebih untuk mendapatkan hasil. bitwise.

baik bilangan bulat maupun pecahan. Artinya Menambahkan nilai 1 pada a.Operator aritmatika hanya dapat digunakan dengan operand yang bertipe bilangan. mengevaluasi nilai a sebelum diincrement/ditambahkan --a. mengevaluasi nilai a sebelum diincrement/ditambahkan a--. Artinya Mengurangkan nilai 1 pada a. Misal : a++. 14 .2 Increment and decrement Operator increment digunakan untuk menaikkan suatu nilai integer (bilangan bulat) sebanyak satu satuan dan hanya dapat digunakan pada variabel. Misal : ++a. Artinya Mengurangkan nilai 1 pada a. yaitu prefix dan postfix.3. Sedangkan Operator decrement digunakan untuk menurunkan suatu nilai integer sebanyak satu satuan dan hanya dapat digunakan pada variabel. Prefix berarti operator digunakan sebelum variabel atau ekspresi. mengevaluasi nilai a sebelum didecrement/dikurangkan. artinya Menambahkan nilai 1 pada a. mengevaluasi nilai a setelah didecrement/dikurangkan Postfix berarti operator digunakan sesudahnya. Simbol Operator ++ -Keterangan Increment Decrement Ada dua versi operator increment dan decrement. Yang termasuk operatoraritmatika adalah sebagai berikut : Simbol Operator + * / % Keterangan Oprasi Penjumlahan Oprasi Pengurangan Oprasi Perkalian Oprasi Pembagian Oprasi Modulus (sisa bagi) 2.

Operasainya dapat digambarkan seperti berikut : cara untuk complement : bilangan awal ditambah 1 jika bilangan bernilai positif.2.3 Operator Bitwise Operator bitwise adalah operator yang digunakan untuk mengoperasikan secara langsung terhadap bit yang menyusun suatu bilangan.3. Bitwise XOR (^) Bitwise XOR akan menghasilkan bit “1” jika kedua operator memiliki nilai yang berbeda. ~x = ? Keterangan : x = 1000 = 0000 1000 Angka nol menandakan positif Sumber desimal 8 0000 1000 1 + 1001 Bit didepannya ditukar menjadi 1111 1001 1111 1001 = desimal -9 Angka 1 menandakan negatif Keterangan Oprasi NOT (complement) Oprasi AND Oprasi OR Oprasi XOR 15 . Simbol Operator ~ & | ^ Bitwise AND (&) Bitwise AND akan menghasilkan bit “1” jika kedua operator bernilai bit “1”. bilangan awal dikurangi 1 jika bilangan bernilai negatif. contoh : x = 8. Bitwise OR (|) Bitwise OR akan menghasilkan bit “1” jika salah satu operator bernilai “1”. Bitwise NOT (~) Bitwise NOT (complement) akan menghasilkan bit yang berlawanan dengan bit yang dioperasikan.

Hanya saja di operator logika. 16 . operand yang dilibatkan disini harus bertipe boolean.3. yang hanya mempunyai nilai true atau false. yaitu benar (true) atau salah (false).3.5 Operator Logika Operator logika adalah operator hubungan (relasi) yang sering dipakai untuk operasi perbandingan dan selalu menghasilkan suatu nilai bertipe boolean. &. 2. Yang termasuk dalam boolean operator adalah Simbol Operator ! & | ^ && || Keterangan Oprasi NOT Oprasi AND Oprasi OR Oprasi XOR Short Circuit Oprasi AND Short Circuit Oprasi OR Operator !.2. Yang termasuk dalam logika operator adalah Simbol Operator Keterangan == Oprasi perbandingan Sama dengan != Oprasi perbandingan Tidak sama dengan > Oprasi perbandingan Lebih besar >= Oprasi perbandingan Lebih besar sama dengan < Oprasi perbandingan Lebih kecil <= Oprasi perbandingan Lebih kecil sama dengan Operator logika atau relasional dalam Java digunakan untuk menghasilkan nilai boolean yang sering dipakai untuk mengatur alur jalannya sebuah program.4 Operator Boolean Operator boolean adalah operator yang digunakan terhadap operand bertipe boolean yang hasilnya benar (true) atau salah (false). | dan ^ mempunyai implementasi yang sama sebagaimana ketika ia menjadi operator bitwise.

Biasanya operator kombinasi ini dipakai untuk mempersingkat waktu penulisan program. sama halnya dengan if-then-else dan hanya berlaku untuk persyaratan tunggal.8 Operator Kondisional Operator kondisional Adalah operator yang dipakai untuk operasi kondisi (persyaratan). 17 .6 Operator Shift Sift operator adalah operator yang berfungsi untukmenggeser susunan bit pada suatu nilai. yaitu tanda tanya (?) disertai dengan tanda (:) titik dua. Operator ini mengembalikan suatu nilai yang benar sesuai kondisi yang diberikan. Operator kondisional ini hanya ada satu macam.dan = Gabungan dari operator * dan = Gabungan dari operator / dan = Gabungan dari operator % dan = Gabungan dari operator & dan = Gabungan dari operator | dan = Gabungan dari operator ^ dan = Gabungan dari operator >> dan = Gabungan dari operator << dan = 2.2.3. Yang termasuk dalam shif operator adalah Simbol Operator >> << >>> 2.3. Demikian pula sebaliknya. Yang termasuk dalam kombination operator adalah Simbol Operator += -= *= /= %= &= |= ^= >>= <<= Keterangan Gabungan dari operator + dan = Gabungan dari operator .3. Jika kondisi persyaratan yang terletak di sebelah kiri tanda tanya (?) bernilai benar. maka persyaratan yang berada di sebelah kiri tanda (:) titik dua yang akan diambil.7 Keterangan Geser kanan Geser kiri Geser kanan tanpa mempertahankan sign Operator Kombinasi Operator kombinasi atau operator majemuk adalah gabungan dari operator-operator penugasan.

if-else. apakah keadaan tersebut bernilai benar (true) atau salah (false).4 Percabangan Percabangan dalam java terdapat 2 macam yaitu dengan memakai if dan switch. switch.9 Operator Penugasan Untuk melakukan penugasan variabel harus dideklarasikan dulu baru diberikan penugasan. Jika keadaan tersebut true maka kumpulan pernyataan akan dijalankan dan jika false maka tidak dijalankan. dan jenis – jenis percabangannya ada 4 yaitu : if. Pernyataan kendali aliran if akan menguji sebuah keadaan.2 Tampilan flowchart percabangan if 18 . else-if. Operator assigment dengan simbol = (Sama dengan) Contoh: a = 7. 2.1 Percabangan If Percabangan if dipakai jika kita menginginkan suatu pernyataan itu dilakukan dengan syarat tertentu.4.2. Sintaks atau tata cara dari if adalah sebagai berikut : if (ekspresi_boolean) { Pernyataan – pernyataan. } Algoritma dalam bentuk flowchart dari percabangan if adalah sebagai berikut Start C = 14 C>0 c lebih besar dari 0 End Gambar 2. Operator assigment pada java digunakan untuk memberikan sebuah nilai kesebuah variabel. artinya menugaskan a diberi nilai 5 2.3.

artinya dapat pula didalam if ada else. Statement if pada bagian else dapat menjadi struktur if else yang lain.3 Tampilan flowchart percabangan if .} else { Pernyataan 2.2 Percabangan If-else Percabangan if-else dipakai untuk mengeksekusi salah satu dari 2 pernyataan dari syarat tertentu yang dapat bernilai benar atau salah. Jika pernyataan bernilai benar maka dikerjakan blok yang ditentukan tapi jika pernyataan salah akan dikerjakan blok yang lain.4.} Algoritma dalam bentuk flowchart dari percabangan if adalah sebagai berikut Start C = 14 C>0 c lebih besar dari 0 c lebih kecil dari 0 Cetak Hasil End Gambar 2.2.else 2. Sintaks atau tata cara dari else – if adalah sebagai berikut : if (ekspresi_boolean ke-1){ Pernyataan 1.3 Percabangan else – if Percabangan else – if dipakai untuk memberikan kondisi tertentu pada bagian else.} 19 . Else – if merupakan pernyataan yang berbentuk kondisi didalam else ada if. Sintaks atau tata cara dari if – else adalah sebagai berikut : if (ekspresi_boolean){ Pernyataan 1. dalam else ada if lagi dan selanjutnya tergantung kebutuhan program.4. Struktur ini mengizinkan anda untuk membuat seleksi persyaratan yang lebih kompleks.

} Dalam statement switch java memeriksa terlebih dahulu ekspresi dari switch dan meloncat ke case selanjutnya mencocokan nilai yang sama dengan persyaratannyaprogram mengerjakan statement dari awal sampai menemukan yang sesuai dan statement break dan juga melewati statement – statement lain sampai akhir struktur switch. 2. diantaranya menggunakan FOR.5.1 Perulangan menggunakan FOR 20 .4. Dengan menggunaka switch anda dapat melakukan pilihan percabangan dengan persyaratan yang beragam. case <nilai2>:Pernyataan 2 . byte dan char.} . 2.} ketika ekspresi_boolean1 bernilai bernilai false maka alur program akan menuju ke else. break. 2. else if (ekspresi_boolean ke-n){ Pernyataan ke-n. default (Pernyataan ke – n).4 Percabangan Switch Percabangan switch dipakai pada saat kita ingin memberikan kondisi dengan beberapa syarat identikyang masing – masing mempunyai pernyataan yang berbeda – beda pada java nilai yang dilewatkan pada switch harus bertipe int. Blok default adalah optional jadi percabangan switch dapat tidak memiliki blok default. Jika tidak ditemukan case yang cocok maka program akan mengerjakan blok default.5 Perulangan Pada bahasa pemrograman JAVA terdapat tiga jenis perulangan.else if (ekspresi_boolean ke-2){ Pernyataan 2. short. Sintaks atau tata cara dari if adalah sebagai berikut : switch (ekspresi){ case <nilai1>:Pernyataan 1. WHILE dan DO WHILE. . break. Begitu seterusnya sampai ekspresinya bernilai benar.

5 Flowchart perulangan while 2.2 Perulangan menggunakan WHILE Perulangan dengan WHILE dipakai saat kita melakukan perulangan dengan jumlah yang belum diketahui pasti. Sintaks dari while adalah sebagai berikut: while (kondisi) { //pernyataan } Berikut merupakan Flowchart perulangan menggunakan while : Gambar 2. Sintaks dari FOR adalah sebagai berikut : for (inisialisasi.5.Perulangan menggunakan FOR digunakan pada saat ingin melakukan perulangan dengan jumlah yang sudah diketahui pasti. Pernyataan pada DO akan 21 . kondisi.4 Flowchat perulangan for 2.3 Perulangan menggunakan DO WHILE Perulangan menggunakan DO WHILE digunakan ketika melakukan perulangan dengan jumlah yang belum diketahui pasti. perubah){ //Pernyataan } Berikut merupakan Flowchart perulangan menggunakan for : pernyataan kondis Keluar loop i Gambar 2.5. Pernyataan pada while akan dikerjakan setelah pengecekan kondisi pada while bernilai true.

Memilki memori yang besar dalam menjalankan program.dikerjakan terlebih dahulu.6 Flowchart perulangan do. interpreter. setelah itu dilakukan pengecekan kondisi pada while.while 2.6 Pengenalan IDE Pada JAVA IDE ( Integrated Development Environment ) merupakan program computer yang memiliki beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak. Berikut merupakan Flowchart perulangan menggunakan while : Gambar 2. Kelebihan : a. Tujuan IDE untuk menyediakan semua utilitas yang diperlukan dalam sebuah penegmbangan program. debugger dan lainnya. Kekurangan : a. d. yaitu Swing Hanya bersifat generated code. compiler. Hanya ada satu GUI. 22 . Memerlukan dukungan prosesor yang handal. Software ini juga bersifat multi-language programing mampu membaca semua bahasa pemrograman mulai editor . tidak bias secara manual dalam pengeditan progamnya. Netbeans merupakan software yang dibuat oleh Sun Microsystem yang pada sekarang di tahun 2011 meluncurkan versi Update 7. Sintaks dari do-while adalah sebagai berikut : do { //pernyataan } while (kondisi). Bersifat gratis dan memiliki banyak plug-in. c. b. dengan jdk yang ada. Dan mempunyai Graphic User Interface dengan Swing. Macam – macam IDE pada java : 1.

kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.0 2. Multi-language programing d. Cobol. Solaris. Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak. Core platform b. Linux. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java.0. OSGi c. Menyertakan GlassFish 3. pengembangan web. dan lain sebagainya. Berikut ini adalah sifat dari Eclipse: Multi-platform: Target Praktikum Pemrograman Lanjut Eclipse adalah Microsoft Windows. seperti dokumentasi. HP-UX dan Mac OS X. Eclipse Workbench 23 . akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya. yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. GUI builder sangat cocok untuk pengembang system berskala enterprise. Perl. JFace e. seperti C/C++. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source. yang mengangkat plug-in. Eclipse pada dasarnya merupakan sebuah kernel.1 untuk versi terbaru dalam neatbens 7. Sejak versi 3. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP: a. e. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi. AIX. dan lain sebagainya. Selain itu. Sangat kompatibel dengan Swing c. SWT (Standard Widget Toolkit) d. Python.b. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. test perangkat lunak. PHP. Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent).

pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools).Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools).*. Konsep Eclipse adalah IDE yang terbuka (open). dan tidak untuk sesuatu yang spesifik.1 Komponen AWT Antarmuka klasik berada di kelas AWT yang bisa di akses melalui java. Selain itu. jGRAPH adalah software visualisasi dan editor yang diimplementasi java serta bias dijalankan disemua platform dengan JVM (Java Virtual Machine) pada versi 1. akan tetapi dapat digunakan untuk berbagai macam keperluan. mudah diperluas (extensible) untuk apa saja. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java.7 Pemrograman Visual Pada JAVA Komponen antarmuka grafis ( Graphical User Interface / GUI ) yang disediakan oleh java memiliki 2 bagian. yang dibuat oleh auburn university. Salah satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project.5 keatas dan multi – language programing . 2. 3. yaitu antarmuka klasik dan program antarmuka modern. Eclipse tidak saja untuk mengembangkan program Java. dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru.awt. Komponen ini mempunyai subkelas komponen seperti berikut : 24 . plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java.7. plug-in UML2 tersedia untuk membuat diagram UML. cukup dengan menginstal plug-in yang dibutuhkan. 2. Jadi.

Choice merupakan tampilan klasik dari komponen kombinasi textfield dan drop-down item list. f. i. 25 . Scroll pane merupakan kombinasi dari scrollbar dan panel sehingga dalam mebuat sudah ada scroll ( tarik gulung ). Label merupakan komponen yang digunakan pada pemrograman visual teks atau pelabelan pada pada desain antarmuka. g. c. h. Panel merupakan komponen yang digunakan untuk membuat panel baru di dalam panel. TextArea merupakan komponen klasik dari pemrograman java untuk membuat kolom teks yang lebih dari satu baris.Gambar 2. Scrollbar komponen visual untuk dipakai membuat tarik gulung secara vertical. b. PopUp menu merupakan bagian dari visual interface java untuk membuat tanpilan menu melayang. l. j. Button merupakan komponen yang digunakan untuk membuat tombol yang bersifat klasik. Canvas tempat untuk aplikasi lain bisa ditempatkan. List merupakan kolom yang digunakan untuk menuliskan list. k.7 Tampilan gambar komponen pemrograman visual AWT a. m. e. Menu bar merupakan komponen dari visual AWT yang digunakan untuk membuat kelompok Menu. d. TextField komponen klasik yang digunakan untuk teks satu baris. Check Box merupakan komponen yang digunakan untuk membuat item selected dan deselected dengan tanda centang.

JLabel. 26 . 2) Tabbed pane merupakan membuat tampilan panel dengan tab menu.7. dan semua komponennya di mulai dengan huruf J. JTextField.8 Tampilan Komponen Swing Containers 1) panel merupakan tampilan visual yang lebih modern untuk membuat panel kotak visual baru. internal frame. desktop pane. tabbed pane. a. 4) Scroll pane merupakan panel yang dilengkapi dengan scroll atau kursor tarik gulung. 8) Layered pane digunakan untuk membuat layer baru di dalam panel. Swing Containers Pada Swing containers mempunyai komponen seperti panel. dan layered pane. 6) Desktop pane merupakan komponen yang digunakan untuk membuat panel mirip tampilan desktop. misalnya JButton. Ada 9 paket utama pada swing dan puluhan bahkan ratusan kelas antarmuka. split pane . 7) Internal frame merupakan bingkai yang digunakan untuk membuat bingkai yang berada di dalam panel. JComboBox. dsb. Gambar 2. toolbar. 3) Split pane digunakan untuk membuat dau panel dengan batas (split). 5) Tool bar merupakan pemrograman visual yang digunakan untuk membuat tempat menu-menu atau icon sebagai tool.2 Komponen Swing Komponen swing merupakan komponen visual pemrograman java yang lebih modern daripada AWT.2. scroll pane.

JMenuItem untuk membuat tombol 3) JComboBox digunakan sebagai tampilan kombinasi textfield dan dropdown list. 4) JFrame merupakan wadah untuk meletakan semua komponen GUI yang akan ditampilkan.9 Tampilan Gambar Macam Komponen Swing Controls 6) JTextArea merupakan kolom teks yang lebih satu baris. 27 . Gambar 2. 5) JPasswordField kolom teks untuk memasukkan password. 9) JTree merupakan komponen yang digunakan untuk membuat tampilan pohon direktori. Swing controls Merupakan kumpulan komponen swing yang digunakan sebagai control dari program seperti gambar dibawah ini : 1) JLabel untuk membuat label atau teks pada panel 2) JButton . JButtonGroup digunakan untuk membuat tampilan pilihan dengan radio button. ToggleButton . 7) JTable merupakan komponen untuk membuat table pada frame.b. 8) JRadioButton.

Separator merupakan pembatas dari menu item. Swing Menus Gambar 2.atau akan muncul jika diklik.10 Tampilan Gambar Macam Komponen Swing Menus a. Swing windows Gambar 2.bawah. d. menu item / checkbox (merupakan tambahan menu dengan tanda centang). maupun komponen menu lainnya. b. dengan tambahan variasi menu. baik diatas. menu item. Dialog merupakan komponen yang digunakan untuk membuat jendela dialog atau attention. dan menu item / radiobutton (hampir sama dengan checkbox namun hanya saja bukan tanda centang melainkan radio).c.11 Tampilan Dari Komponen Swing Windows a. Frame merupakan komponen pada swing windows yang dipakai untuk membuat bingkai. Menu bar merupakan komponen dari swing yang digunakan untuk membuat barisan tampilan menu – menu. Popup menu merupakan menu melayang. 28 .atas kiri dan lainnya sesuai pemrogram. c. b.tengah.

objek tombol. objek jendela(window). Java. Delphi . Rigrid area merupakan komponen dari swing fillers yang digunakan batas vertical dan horizontal dari pusat anda meletakan rigrid area ini. vertical glue . dsb. objek kotak gambar (picture box). Objek disini dalam pemrograman adalah suatu komponen dari suatu system yang dibangun. Visual Java.misalnya objek matematis. Swing Fillers Yang termasuk dari komponen swing fillers adalah sebagai berikut : Gambar 2. dan horizontal glue merupakan komponen yang digunakan untuk mengatur jarak antar komponen. e. b. d. Color chooser merupakan komponen warna yang digunakan untuk melakukan pemilihan warna. Visual C. Python. objek kotak teks (text box). Glue . 29 .12 Tampilan Macam Komponen Dari Swing Fillers a. Konsep Objek a. perkembangan dari OOP juga memberikan konsep terbaru pada pemrograman Visual Basic.c.8 Pemrograman Berbasis Objek Pada JAVA Pemrograman berbasis objek (OOP – Object Orientasi Programming) merupakan satu ide luar biasa dalam bidang pemrograman yang setelah diterapkan ternyata melahirkan bahasa yang lebih maju seperti C++. 1. c. Option pane merupakan panel untuk tampilan option e. Horizontal dan Vertikal Strut merupakan komponen dari swing fillers untuk mengatur batas. File chooser merupakan untuk menampilkan tampilan seperti look in my document. 2.

3. fungsi (method). Analogi dari objek pemrograman procedural adalah fungsi atau prosedur yang bekerja mandiri menghasilkan sesuatu dalam proses pertukaran data dengan program utama. 2. Setiap kelas juga bisa memiliki pewarisan yang dinamakan inheritance. d. c. Sedangkan didalam kelas juga memilki sifat – sifat (attribute). Kelas Konstruktor Merupakan adalah suatu fungsi khusus yang diberi nama – nama dengan nama kelasnya yang digunakan untuk memberi nilai pada atribut kelas dapat dilakukan pada saat objek didefinisikan melalui suatu kelas konstruktor. Enkapsulasi Merupakan suatu kelas sebenarnya yang terpisah dari kelas yang lain dimana atribut dan fungsi terbungkus dalam kapsul sehingga akses dari luar terhadap isi kelas pada dasarnya terbatas. Setiap objek juga mempunyai kelompok tersendiri dan sering disebut kelas (class) atau juga sering dikenal dengan Blueprint. yang biasa dilaksanakan melalui kata kunci extends. 4. Setiap kelas sendiri merupakan suatu kesatuan yang terpisah (enkapsulasi). 30 . Polimorfisme Adalah sifat dari kelas objek yang memungkinkan beberapa fungsi dapat memiliki nama yang sama walaupun isi fungsi tersebut berbeda. Pewarisan Adalah pewarisan pada sub kelas dari suatu kelas.b. 5. serta kelakuan (behavior).

BAB III PENGENALAN JAVA DAN RUANG LINGKUP KERJA 3.1 Instalasi JDK Untuk dapat bekerja dengan Java Netbeasn. Akan muncul jendela pilihan untuk menginstall atau tidak. Cari tempat file JDK disimpan. maka kita perlu melakukan instalasi Java Development Kit (JDK).2 Jendela utama penginstalan JDK 31 . Gambar 3. Gambar 3. kemudian klik “Next”. 1.1 Letak File JDK 2. kemudian klik dua kali.

Silahkan tunggu proses install sampai selesai.3 Jendela Custom Setup 4.3.4 Tampilan Progress install JDK 32 . Kemudian pilih paket program yang akan diinstal. Gambar 3. Gambar 3.

exe dan tools jar 33 . Akan muncul jendela tampilan jika proses instalasi sudah selesai. lalu klik “Continue”. file java.7.6 Letak file java.exe yang teradapat pada direktory C:\Program Files\Java\jdk1. 1. Sedangkan pengesetan CLASSPATH sangat berguna untuk memberitahu sistem dimana kita meletakkan file-file class yang akan dilibatkan dalam suatu program.5. Gambar 3. Cari alamat PATH file disimpan.0_03\bin Gambar 3.5 Jendela tampilan Complete instalasi 3.2 Pengesetan PATH dan CLASSPATH Pengesetan PATH sangat berguna untuk memberitahu sistem dimana kita meletakkan file-file utama java.

Start → all programs → Accessories → Command Prompt → OK Gambar 3.7.7 Langkah membuka Command Prompt 3.8 Pengesetan PATH untuk Java pada Command Prompt 34 . Buka Command Prompt a. Pengesetan PATH Set PATH= C:\Program Files\Java\jdk1.2.0_03\bin Gambar 3. Start → run → cmd→ OK Atau bisa juga dengan : b.

7. dengan mengetikkan perintah “java” <enter> lalu “javac” <enter>. Gambar 3. Pengesetan CLASSPATH Set CLASSPATH= C:\Program Files\Java\jdk1.0_03\lib Gambar 3. Mengecek pengesetan PATH dan CLASSPATH.4.10 mengecek pengesetan PATH dan CLASSPATH 35 .9 Pengesetan CLASSPATH untuk Java pada Command Prompt 5.

Buka notepad++ b.3.java D:\program\>java GuruhPutroDirgantoro <enter> Gambar 3. Simpan dengan nama file yang sudah di tentukan (GuruhPutroDirgantoro.java) dan di simpan di drive D d.3 Menampilkan Suatu Tulisan Ke Layar Langkah . } } } c.langkah menampilkan tulisan pada program JAVA : a.11 JAVA Compile GuruhPutroDirgantoro.println(“Hallo nama saya adalah Guruh Putro Dirgantoro”).java <enter> Gambar 3. Ketikkan perintah berikut pada Command Prompt: D:\program\>javac GuruhPutroDirgantoro.out. Ketik program yang telah tersedia pada modul public class GuruhPutroDirgantoro { public static void main(String args []){ System.12 Jalankan program GuruhPutroDirgantoro 36 .

13 Kompilasi program JAVA yang terdapat kesalahan Kenapa terjadi kegagalan pada kompilasi? Benahilah kesalahan diatas sehingga program tersebut dapat berjalan dengan baik.3. Program ini tidak bisa berjalan karena program tersebut diberi nama file Greeting.println ("What's wrong with this program?"). } } Lakukan kompilasi pada file tersebut dan amati hasilnya.java public class Testing { public static void main (String [] args) { System.out. 3.java dan kemudian disimpan ulang.4. Tanda [] diletakkan di belakang args Tanda „ dihilangkan 37 . Nama file : Greeting. Supaya program tersebut bisa berjalan maka nama filenya harus diganti dengan nama EdoTesting. 2. Gambar 3.4 3.java yang tidak sesuai dengan nama classnya.1 Menganalisa dan Membenahi Kesalahan Pada Program Menganalisa script latihan pertama Tulislah program berikut ini dan simpanlah dengan nama tertentu. Hasil : 1.

} } 5. Program ini disimpan di Drive D. Skrip penulisan yang benar adalah sebagai berikut : public class Greeting { public static void main (String args []) { System.14 Tampilan hasil menganalisa dan membenahi kesalahan pada program 3.java 2.out.out. Hasil : 1.1 Menganalisa script latihan kedua Tulislah program berikut ini dan simpanlah public class test { public static void main (String args) { System. Program ini tidak bias berhasil karena kurang tanda [] 38 . dengan nama file edoTest. Dan dibawah ini hasil dari kompilasi suatu program dan penyimpanan yang benar Gambar 3. } } Lakukan kompilasi pada program tersebut dan jelaskan kenapa terjadi kesalahan pada saat menjalankan program tersebut.4.4.println (“What‟s wrong with this program?”). Benahilah kesalahan diatas sehingga program tersebut dapat berjalan baik.println ("What's wrong with this program?").

println("Angkatan : 2011 E"). Supaya program tersebut dapat berjalan. Ketikan program berikut pada aplikasi editor public class bioEdo { public static void main(String args[]) { System.3. System. System.out. System. maka harus melengkapinya sehingga menjadi String args[] 4. . Dan dibawah ini adalah hasil kompilasi yang benar Gambar 3.Tuban"). } } 6.").out. . Skrip penulisan yang benar adalah sebagai berikut : public class edoTest { public static void main (String args []) { System. Simpan file dengan nama : bioEdo.out.5 Percobaan Menampilkan biodata 1.15 Tampilan hasil menganalisa dan membenahi kesalahn pada program 3. Tanda „ dihilangkan 5. } } 2.out.java 39 .println("Npm : 1412110221").println("Nama : Guruh Putro Dirgantoro").out.println("Hallo . System. System.out.out.println ("Whats wrong with this program?").println("Moto : Alon-alon asal kelakon").println("Alamat : Latsari .

ClassName. e. Sebagai contoh : charArray. Java adalah turunan dari C. i. Hal ini selalu baik untuk menganalisa variable yang anda buat seperti anda mendeklarasikannya. menggunakan nama huruf capital untuk mengindikasikan awal dari kata kecuali kata pertama. Untuk pemberian nama class java. Pada kasus untuk pengindentifikasi lebih dari satu kata. k. Dan harus persis sama besar kecilnya huruf sesuai dengan aturan butir a. diberikan huruf capital pada pertama nama class. anada dapat kurung kerawal buak pada baris dengan pernyataan atau bias pada baris selanjutnya. f. hanya ada satu method main ( method yang pertama kali dibaca oleh interpreter java ). hanya di ijinkan memiliki satu buah class yang bersifat public. Dalam sebuah file program di java . Lakukan kompilasi melalui Commant Prompt dan berikut adalah output yang dihasilkan : Gambar 3. c. sehingga Java memiliki sifat C yaitu Case Sensitive . yaitu membedakan huruf besar dan kecil yang kita tuliskan. Hindari menggunakan underscores pada awal pengindentifakisan seperti contoh : _read atau _write. h.3. Dalam mendifinisikan suatu nilai log. j. Nama sebuah file program java harus sama dengan nama class yang memiliki method main() di dalam tubuhnya. g. Dalam sebuah file program java. b. 40 . fileNumber. a lowercase L tidak dianjurkan karena sulit untuk membedakan dari digit 1.16 Tampilan menampilkan kalimat biodata kelayar Aturan Penulisan Program Di Java a. Pada saat pembuatan block . Anda hasrus memberikan jarak ( line new ) pernyataan selanjutnya. d.

out.out.java 3.println("Default value c = " +c).println("Default value l = " +l).println("Default value i = " +i).println("Default value bt = " +bt). System. System. System.out. System.out. c. static int i. Hasil program yang berhasil running sebagai berikut : Gambar 4. static char c.1.java <enter>. System.println("Default value d = " +d). static double d. System. Kertikkan D:\program\bab2\ dengan nama EdoDefaultValue.out.1 Tampilan EdoDefaultValue. d.out.out. static float f. static long l. static byte bt.println("Default value f = " +f).println("Default value s = " +s).1 Menampilkan Nilai Default dan Nilai Maksimal Dari Tipe Data Primitif Menampilkan nilai default dari masing-masing tipe data source code program dibawah ini dan simpan pada 4. }} 2.out. Lakukan kompilasi dengan cara : a.BAB IV ELEMEN DASAR PEMROGRAMAN JAVA 4.1 1. static short s. Ketikkan perintah javac EdoDefaultValue. Ketikkan kembali perintah java EdoDefaultValue <enter>. public static void main (String args []) { System. Penjelasan : 41 . b. Buka Command Prompt dan pindah ke directory D:\program\bab2.java public class EdoDefaultValue { static boolean b. System.println("Default value b = " +b).

static byte bt. long largestLong = Long.out.MAX_VALUE.2 Nilai maksimal masing-masing tipe data source code program dibawah ini dan simpan pada 1. boolean aBoolean = true.1. System.println("Default value b = " +b). Pada baris ke-11 terdapat public static void main (String args []) ini merupakan method main program yang kita buat dan akan di eksekusi oleh program sebagai tampilan pertama.println("The largest byte value is " + largestByte). int largestInteger = Integer. // real number / float dan double float largestFloat = Float. static double d adalah pendeklarasian variable terhadap tipe data.println("The largest Short value is " + largestShort). double largestDouble = Double. static char c. short largestShort = Short.println("The largest Interger value is " + largestInteger). 42 . // tipe primitive char aChar = 'S'.out.MAX_VALUE. c. merupakan suatu printah yang digunakan untuk menampil default nilai variabel dari masing-masing tipe data yang telah dideklarasikan.MAX_VALUE.out. b. Pada baris pertama public class EdoDefaultValue adalah nama kelas yang akan dieksekusi pertama kali dengan syarat nama file java harus sama dengan nama kelas utama dan isi kelas dibatasi oleh tanda kurung kurawal buka ( { ) dan kurung kurawal tutup ( } ). // tampilkan semua System.MAX_VALUE.java public class EdoMaxVariablesDemo { public static void main (String args []) { // interget byte largestByte = Byte. Mulai dari code System. Pada baris ke-3 static boolean b. System.println("Default value s = " +s). Kertikkan D:\program\bab2\ dengan nama EdoMaxVariableDemo.a.out.MAX_VALUE. static float f.out. static short s.out. sampai code System.println("The largest Long value is " + largestLong).MAX_VALUE. 4. d. System.

java 3.out.out. Ketika program dijalankan. System. Penjelasan : a.println("The " + aChar). c.MAX_VALUE yang berarti program akan memproses sebuah tipe data dan menampilkan nilai maksimal dari sebuah tipe data tersebut.java. Hasil program yang berhasil running sebagai berikut : Gambar 4. Buka Command Prompt dan pindah ke directory D:\program\bab2.println("The is " + aBoolean).println("The is " + largestDouble). Terdapat tanda // yang digunakan sebagai penutup dari syntax dengan fungsi mematikan syntax tersebut atau menggunakannya sebagai penanda 43 . Dalam ruang lingkup main terdapat sebuah syntax . System. b. System.java <enter>. Lakukan kompilasi dengan cara : a. c.out. program akan mencari method main public static void main (String args []) dan mengidentifikasinya. Nama public class harus sama dengan nama file .2 Tampilan EdoMaxVariableDemo. b.println("The " + largestFloat). Ketikkan perintah javac EdoMaxVariableDemo. d.out. Ketikkan kembali perintah java EdoMaxVariableDemo <enter>.System. } } largest Float value is largest Double value largest Char value is largest Boolean value 2.

Hasil program yang berhasil running sebagai berikut : Gambar 4.3 Tampilan EdoBiodata. Ketikkan kembali perintah java EdoBiodata <enter>.2 1.out. Memberikan Nilai / Literal Pada Variable Kertikkan source code program dibawah ini dan simpan pada D:\program\bab2\ dengan nama EdoBiodata. Sysem. Buka Command Prompt dan pindah ke directory D:\program\bab2.out.java <enter>. Ketikkan perintah javac EdoBiodata. Lakukan kompilasi dengan cara : a.out. String alamat. Edo. Sysem.java public class EdoBiodata { String nama.println("Jenis Kelamin =" +jeniskelamin). b.println("Usia =" +usia). 4. Edo.out. } public static void main (String args []) { EdoBiodata Edo = new EdoBiodata(){ Edo.notelp = "6285648486925".usia = 20. Edo. void tampilkanidentitas(){ Sysem.nama = "(Edo) Guruh Putro Dirgantoro".println("Nama =" +nama). String notelp.jeniskelamin = "L".out. c.println("Alamat =" +alamat). Edo. } } } 2.java 44 .println("No Telepon =" +notelp).komentar sehingga membantu para programmer dalam mengingat alur program tersebut. char jeniskelamin. Sysem.alamat = "Jalan Teuku Umar Gang Karang rejo RT 001 RW VIII Tuban". int usia. Sysem.

} catch (Exception e) {System. Penjelasan : a. 45 .3.println("error"+e). try { input = (char) System. adalah contoh dari objek Edo mengakses variable nama.} } } Program diatas jika dijalankan akan menghasilkan sebuah inputan karakter yang ditampilkan tanpa ada perulangan tampilan : Gambar 4. Pada program diatas syntax EdoBiodata Edo = new EdoBiodata() merupakan penamaan obyek dengan nama Edo pada kelas EdoBiodata.4 Tampilan Hasil Membaca Lebih Dari Satu Karakter Program diatas adalah program yang menggunakan input system.out. alamat dan seterusnya.read().3 4. 4.nama = "(Edo) Guruh Putro Dirgantoro".3. b. dan tidak akan menampilkan apa – apa jika yang kita input kan kurang dari 1 karakter karena dalam program sudah terdapat batasnya yaitu char input = (char) -1. Lihat script dibawah ini : class EdoHuruf { public static void main(String[] args){ char input = (char) -1.in.in.read() dimana akan membaca hasil yang kita input. Edo.1 Memberikan Nilai Input Pada Program Membaca Satu Karakter Latihan membuat program untuk membaca karakter dari yang kita inputkan tanpa diulangi untuk ditampilkan.

in.1 namun cara input yang berbeda dan menampilkan ulang hasil input kita. try { while ((c= (char)System. sebetulnya sama dengan script pada 4. } } catch (Exception e){ System.in.3.out.1 pada program ini saya coba memasukkan karakter input yang sama sehingga agar bias melihat perbedaannya. } System.2 Membaca Beberapa Karakter Hasil percobaan membuat percobaan membaca input.3.toString()).read())!='\n'){ 4.read())!='\n'){ s.out.println("error"+e.println(s).3. Dan melakukan implisit casting dimana pada bagian ((c = (char)System.append(c).5 Tampilan Hasil Compile Membaca Input Dengan String buffer Program diatas merupakan program yang menggunakan input karakter dengan stringbuffer. Lihat scripnya : class EdoData1 { public static void main (String[] Args){ StringBuffer s = new StringBuffer().4. yaitu buffer yang bertipe string StringBuffer s = new StringBuffer(). } } Lakukanlah pengompilean seperti no. lihat gambar : Gambar 4..3 Membaca dengan Int Read ( Byte b[ ] ) Percobaan dibawah ini adalah program yang membaca karakter dengan read byte : 46 .3. char c. 4.

} catch (Exception e){ System.out.4 Membaca Karakter Dengan Int Read(Byte B[].println(s). merupakan implisit casting dengan kondisi buffer nilai yang dimasukan harus lebih dari 0 (nol).out.6 Tampilan Hasil Compile Membaca Input Dengan Int Read ( Byte B [ ] ) byte buf[] = new byte[80]. 47 . try { System.in. 0). } String s = new String(buf. 0). Int_Panjang) Perhatikan scriptnya di bawah ini : class EdoData3 { public static void main(String [] args){ byte buf[] = new byte[10].println("error : " + e.3.read(buf). Int_Awal.toString()).class EdoData2 { public static void main (String args[]){ byte buf[] = new byte[80]. } } Hasil compile program diatas adalah sebagai berikut : Gambar 4. 4. System. Sedangkan String s = new String(buf. script ini menandakan bahwa program diatas memakai system input read byte dengan [80] merupakan banyaknya karakter yang mampu dimasukan dalam input atau yang mampu terbaca.

toString()). try { System. 0.read(buf.println ("error : "+ e. 0.read(buf. 10).println(s). dari hal ini dikarenakan ada program ini memberikan kondisi int panjang 10 karakter seperti contoh kutipan script program diatas : byte buf[] = new byte[10].try { System. } } Maka hasil program diatas jika di jalankan pada command prompt adalah seperti berikut ini.in. 48 . System. dengan mencoba menginputkan kalimat guruh putro dirgantoro: Gambar 4. 0. 10).7 Tampilan Hasil Membaca Karakter Dengan Int Awal Dan In Pajang Mengapa ketika input diketikan Guruh Putro Dirgantoro hanya muncul 10 karakter termasuk spasi dari awal kalimat yaitu Guruh Putr .out. } (buf. 0). 10) angka 10 disitu yang menyebabkan input hanya dibatasi sepuluh karakter saja. jika kita mengganti angka int panjang 15 mungkin akan menampilkan karakter sebanyak 15 dari awal. } String s = new String(buf.in. } catch (Exception e){ System.out.

4.3.5

Membaca Input Melalui Data Input Stream

Membaca data melalui input stream sangat beragan yaitu kita bias memasukkan data yang berupa integer, floating , maupun string / karakter. Coba perhatikan script dibawah ini :
import java.io.*; class EdoInputStream { public static void main(String args[]) { DataInputStream in = new DataInputStream(System.in); char c; int angka=0; char huruf=' '; String kalimat=""; try { System.out.print("enter a number : "); kalimat = in.readLine(); angka = Integer.parseInt(kalimat); } catch(IOException e) { System.out.println(e);} try { System.out.print("enter a character : "); kalimat = in.readLine(); huruf = kalimat.charAt(0); } catch(IOException e) { System.out.println(e);} try { System.out.print("enter some words : "); kalimat = in.readLine(); } catch(IOException e) { System.out.println(e);} System.out.println("here are what you type in : "); System.out.println("number : " +angka); System.out.println("Karakter : "+huruf); System.out.println("kalimat : "+kalimat); } }

Jika program diatas dijalankan , maka kita coba inputkan data sesuai berikut : 1. Enter a number : (coba masukkan 1-9 , karena tipe integer hanya mampu menampung 10 digits).

49

2. Enter a character : (coba masukkan huruf besar / kecil antara A – Z atau a – z). 3. Enter some words : (coba anda masukkan kalimat apa saja)

Maka hasilnya dari diatas adalah seperti gambar dibawah ini :

Gambar 4.9 Tampilan Hasil Compile Program Input Data Dengan Inputstream

1. Terjadi converting pada bagian script huruf = kalimat.charAt(0); disini yaitu mengubah variabel huruf atau kalimat yang diinputkan ke tipe Char. angka = Integer.parseInt(kalimat); script ini berarti

bahwa data yang dinputkan integer namun dilakukan ekplisit casting ke nilai yang lebih sempit.
2. Ciri dari program input stream biasa memakai import java.io.*;

karena tanpa itu system IOException yang bertipe seperti dibawah ini : try { System.out.print("enter a number : "); kalimat = in.readLine(); angka = Integer.parseInt(kalimat); } catch(IOException System.out.println(e);} tidak akan berjalan ( berfungsi ) sehingga menimbulkan error pada program. 50 e) {

3. DataInputStream

in

=

new

DataInputStream(System.in); Kata in pada script diatas merupakan variabel baru yang digunakan variabel read line. Contoh : kalimat = in.readLine(); . jika kita memakai kata input pada pendeklarsian variabel new maka otomatis pada script input read linenya berubah menjadi kalimat = input.readLine();

4.3.6

Memanfaatkan Argumen String Args[ ]

Perhatikan script dibawah ini :
public class EdoArgu { public static void main(String args[]){ float i = Integer.parseInt("1"); float j = Integer.parseInt("2"); float hasil = (i*j+j-i)/j; System.out.println("hasilnya = " +hasil); } }

Jika program diatas dijalakan pada command prompt maka hasilnya sebagai berikut :

Gambar 4.10 Tampilan Hasil compile Interpreter Memanfaatkan Argument String Args[ ]

Dari mana hasil 1.5 itu pada output ? hasil 1.5 itu diperoleh pada rumus yang digunakan pada program yaitu float hasil = (i*j+j-i)/j; anda juga bias diubah sesuai pemrogram. Jadi hasil 1.5 tadi mengeksekusi dari aritmatika tersebut.
float i = Integer.parseInt("1"); float j = Integer.parseInt("2");

potongan script diatas merupakan eksplisit casting yang bertipe integer dengan memberi nilai / argumen pada tanda kurung tersebut dan diapit tanda kutip dua. 51

sehingga hasil dari pembagian dari x dibagi y tetap 1 (bukan 1. System. operasi bit. Sedangkan berbeda dengan variabel a dan b yang bertipe float sehingga pada tampilan program dibawah ini variabel a dibagi b hasilnya 1. System.5f.7857143 52 . dibawah ini merupakan contoh percobaan aritmatika.println("x System. increment – decrement. operator logika. "+(x/y)).1 Menguji Operator Aritmatika Dibawah ini merupakan script untuk menguji operator aritmatika.out. seperti penjumlahan.println("a = " + a +" b = "+b). class EdoAritmatika { public static void main(String[]args) { short x = 2.println("x System. int y = 8.out.5). perkalian. System. float b = 7f.println("x System.out. } } Jika kita jalankan program diatas adalah sebagai gambar 5.out.println("x System. float a = 12. 5. pengurangan. "+(x%y)). "+(x-y)).out.println("x System. "+(x+y)).out.out.1 berikut : Nilai variabel x dan y merupakan bertipe data integer atau bilangan bulat . serta modulus. pembagian. Boolean tipe or dan and. "+(x*y)).println("x = + * / % " y y y y y + = = = = = x +" y = "+y).println("a / b = "+(a/b)).BAB V OPERATOR Operator pada pemrograman pada java dibedakan menjadi dua bagiab unary dan binary operator.out.

System. y = 8.out. pembagian ( / ) .println("x = "+x). System.out.out. System. sudah saya jelaskan di halaman sebelumnya bahwa nilai X dan Y bertipe integer berbeda dengan a dan b. System.println("x = "+ ++x). perkalian memilki hasil nilai yang sesuai namun dalam proses pembagian tidak sesuai .out. System. Pada program variabel x diberikan nilai literal 2 sedangkan y nilai 8 sehingga proses penjumlahan (+). pengurangan (-) .println("x = "+ x--). } } Dibawah ini adalah gambar hasil dari uji operator increment dan decrement nilai : 53 . System.1 Tampilan Hasil Uji Operator Aritmatika Pada operator modulus merupakan operator sisa bagi yang diberi tanda (%) pada pemrograman java.out.println("y = "+ --y). 5.println("y = "+y).2 Melakukan Increment dan decrement Nilai Lihatlah script daibawah ini : class EdoInDecre { public static void main(String args[]){ int x = 2.println("y = "+ y++). sedangkan pada proses perkalian diberi tanda (*) proses aritmatika jika terjadi pada satu baris dalam satu pernyataan akan memproses dari nilai kedekatannya antar operator.out.Gambar 5.

y = 8.out.out. 5.2 Tampilan Hasil Uji Coba Operator Increment Dan Decrement Indecrement merupakan nilai penaikan bit dari suatu angka.println("y System.3 Melakukan Operasi Bit Untuk mengetahui fungsi dari masing – masing operator bitwise.println("x } } = = & | ^ "+x). y = "+(x^y)). Program diatas jika dijalakan akan menghasilkan output dibawah ini : 54 . kihat script dibawah ini : class EdoBitwise { public static void main(String []args){ int x = 2 .Gambar 5.out.out. y = "+(x|y)). maka ketika pada baris 5 yaitu x-sehingga menampilkan nilai 3 karena nilai x ditampilkan dulu kemudian dikurangi. "+y). y = "+(x&y)).println("x System. x = tersimpan dalam memory adalah 2.out.println("x System. x = tersimpan dalam memori adalah 3 . dari program diketahui x = 2 jika pada baris 3 yaitu ++x maka nilai x yang semula 2 menjadi 3 .println("x System. Dan sebaliknya pada variabel y juga tidak berubah karena post-increment. System.

println("y <= z System. "+(x>=y)).println("y == z System. mengapa ketika proses x and y mengahsilkan nilai 0 karena nilai disebelah kiri y adalah salah sehingga memanggil nilai 0. | (or) . "+(y<=z)).out.Gambar 5.out. System.out.println("y = "+y).println("x < y System.3 Tampilan Output Dari Uji Operator Bitwise Operator bitwise pada program diatas yaitu &(and) .out.println("x >= y System.out.println("x != y } } = = = = = = "+(x<y)). System. 5. "+(x>z)).println("x > z System.out.4 Menggunakan Logika Operator Tulis script dibawah ini pada notepad dan jalankan pada command prompt untuk mengetahui dari masing – masing operasi operator logika : class EdoLogikaOperator { public static void main(String[]args){ int x = 2 . Output dari script diatas jika dijalakan maka sebagaimana berikut : 55 . "+(y==z)). dan ^ (xor) . z = 11.out.out. y = 8 . System.println("x = "+x).println("z = "+z).out. System. "+(x!=y)).

5. y = 8 . y . b = 8 . maka salah sehingga pernyataan diatas menampilkan hasil False. 56 . maka benar sehingga pernyataan diatas menampilkan hasil True. 2. maka benar pernyataan diatas sehingga hanya menampilkan hasil True yang bertipe Boolean. maka salah sehingga pernyataan diatas menampilkan hasil False. 3. Pada proses x > z jika melihat pada nilai variabel x = 2 dan z = 11. pada proses x < y jika kembali melihat pada nilai variabel x = 2 dan y = 8.dan z = 11. Pada proses y == z jika melihat pada nilai variabel y = 8 dan z = 11. 5. 6. maka salah sehingga pernyataan diatas menampilkan hasil False. Pada proses x != y jika melihat pada nilai variabel x = 2 dan y = 8. 4. Pada proses y <= z jika melihat pada nilai variabel y = 8 dan z = 11. 1.Gambar 5. maka benar sehingga pernyataan diatas menampilkan hasil True.4 Tampilan Output Dari Program Operator Logika Hasil yang ditampilkan diatas adalah dimana ada 3 variabel x . dimana tiap variabel memiliki nilai / literal x = 2 .5 Menggunakan Operator Boolean And Diabawah ini adalah script program untuk melakukan percobaan operator Boolean and : public class EdoBoolean { public static void main (String []args){ int a = 2. Dari output dan scriptnya kita bisa jelaskan dimana operator logika disini hanya menampilkan True dan False . dan z. Pada proses x >= y jika melihat pada nilai variabel x = 2 dan y = 8.

public class EdoBooleanOr { public static void main (String []args){ int a = 2. maka nilai yang ditampilkan 9 karena semua logika yang benar hanya (b++<10)dan dimana jika b++ sama dengan 9 ( karena nilai b = 8 dan mengalami increment ) dan lebih kecil dari 10.6 Menggunakan Boolean Or Perhatikanlah script program dibawah ini untuk melakukan percobaan Boolean or.5 Tampilan Output Dari Program Boolean And  Boolean and merupakan Boolean yang menampilkan nilai yang benar pada proses pernyataan. sehingga jika nilai b ditampilkan maka berubah menjadi 9. if ((a>2)|(b++<10)) b+=2.out. b = 8 . Sehingga nilai 9 < 10.if ((a<2)&(b++<10)) b+=2. } } Output program diatas jika di jalankan adalah sebagai berikut : 57 .println(b). 5. System.println(b). } } Di bawah ini adalah hasil output dari script diatas : Gambar 5. misalnya pada script diatas : if ((a<2)&(b++<10)) b+=2. System.out.

6 Tampilan Output Dari Program Boolean Or Operator or disini merupakan meneruskan hasil dari b++<10 jika nilai b memenuhi syarat tersebut maka nilai b di tambah +2 sehingga menghasilkan nilai 11 seperti di output program.Gambar 5. 58 .

out. else if (HurufDepan == 'c') System. sedangkan jika if dikembangkan menjadi tiga bentukan yaitu if tunggal.in. }catch (Exception s){ System.println("Apa namamu EDO ?"). else if (HurufDepan == 'd') System. System.println("Apa namamu Bambang ?"). try { HurufDepan = (char) System.out.out.out.out. } if (HurufDepan == -1) System. if – else .println("Aku Belum Bisa Menebak Namamu"). else if (HurufDepan == 'a') System.out. 6. else if (HurufDepan == 'b') System.println("Apa namamu Daud ?"). dan else if Dibawah ini adalah script contoh percobaan untuk percabangan if dan else – if serta if – else : class EdoIfElse { public static void main(String args[]){ char HurufDepan = (char) -1. } } Dari program diatas jika dijalankan pada command prompt akan menghasilkan output seperti berikut : 59 . dan else – if ( if jamak ).out.println("Apa namamu Amin ?").out.BAB VI PERCABANGAN Percabangan pada pemrograman java dari bentuk dasarnya dibedakan 2 jenis yaitu if dan switch. else System. if – else .println("Error : "+s.read(). else if (HurufDepan == 's') System.println("masukkan huruf depan nama anda: ").println("Apa namamu Charlie ?").println("Kok.1 Percabangan Menggunakan if .toString()). tidak turut perintah!").out.

6. misalkan kita mencoba menginputkan huruf depan “ s ” akan menghasilkan seperti gambar 6.out. If – Else . maka akan proses akan mengekseskusi pada bagian else dan menampilkan pernyataan yang dimiliki.1 Sedangkan jika kondisi if tidak sesuai dengan yang kita masukkan. HurufDepan = Character. else System. }catch (Exception s){ 60 . di baris proses seperti dibawah ini memakai if – else : if (HurufDepan == -1) System.2 Percabangan Menggunakan Switch Untuk mengetahui struktur dan percobaan alur kerja ( interpreter ) pada switch perhatikan script di bawah ini : class EdoSwitch { public static void main(String args[]){ char HurufDepan = (char) -1.Dan Else – If Program diatas menggunakan sekaligus tiga bentukan if .out. System.println("masukkan sesuai perintah!").print("masukkan huruf depan nama anda: "). Dimana jika kondisi if benar akan memproses ke else – if sesuai huruf depan yang kita inputkan.println("Belum Bisa Menebak Nama Anda").out.println("Apa namamu EDO ?").in.Gambar 6. else if (HurufDepan == 's') System. try { HurufDepan = (char) System.read(). else if (HurufDepan == 'a') ………… dst.out.toLowerCase(HurufDepan).1 Tampilan Output Program Percabangan If .

println("apa nama anda Bambang ?").println("Kok tidak turut perintah!"). } switch(HurufDepan){ case (char) -1 : System. case 'a' : System.println("apa nama anda Charlie ?"). jika kita compile akan muncul tulisan : masukkan huruf depan nama anda: kita coba inputkan huruf “ s “sesuai case yang maka akan menampilkan pernyataan yang dimiliki case tersebut. case 'c' : System. jika kemungkinan input 61 .out.2 Tampilan Output Dari Percabangan Switch Alur program switch diatas adalah sebagai berikut. case 'b' : System. jika input kita belum sesuai dengan case pada blok pertama makan akan berlanjut ke blok selanjutnya.println("Error : "+s.out. break. case 's' : System.out. case 'd' : System.out.out.println("apa nama anda Edo ?").out. default : System.println("AKU BELUM BISA MENEBAK NAMAMU"). } } } Output dari script diatas jika di eksekusi adalah sebagaimana berikut : Gambar 6.toString()).println("apa nama anda Daud ?"). break. break. break. break. ketika melewati break secara otamatis kita keluar dari percabangan tersebut.println("apa nama anda Amin ?").out. break.System.out.

io.readLine(). System input yang dipakai pada program diatas jenis buffer stdin. String input = stdin.print("masukkan bilangan : ").out. Lebih jelasnya lihat script program dihalaman sebelumnya. 6. String input = stdin.println(" "+bil+" adalah bilangan genap"). public static void main(String[] args) throws IOException { System. if(bil%2!=0) System.out. maka akan menampilkan pernyataan yang dimilki oleh default.*.out.println(" "+bil+" adalah bilangan ganjil").print("masukkan bilangan : ").readline : System.in)).out.3 Tampilan Output Program Untuk Menentukan Bilangan Genap Dan Ganjil a. else System.readLine().yang anda masukan tidak sesuai dengan semua kondisi.3 Menentukan Bilangan Genap dan Ganjil Dibawah ini merupakan mengaplikasikan dari sebuah percabangan untuk menentukan bilangan ganjil dan genap : import java. } } Hasil output dari program diatas adalah sebagai berikut : Gambar 6. 62 . int bil = Integer.parseInt(input). public class EdoBilanganGenap{ private static BufferedReader stdin = new BufferedReader(new InputStreamReader(System.

Suatu bilangan jika hasil modulusnya tidak sama dengan 0 maka termasuk bilangan ganjil.println(bil+" adalah bukan bilangan prima"). c. } else{ System.print("Masukkan nilai : ").out. maka bilngan tersebut di golongkan bilangan genap sehingga pada percabangan else kita tuliskan f.out.util. if (bil==2) { System. import java.parseInt(input). int bil. sebaliknya jika hasil modulus sama dengan 0 .out.println(bil+" adalah bilangn prima"). Bilangan yang kita inputkan akan diparse / di converting dengan tipe yang spesifik. pernyataan : System. d.b.println(bil+" adalah bilangan prima").nextInt(). sehingga pada pernyataan pertama kita tuliskan System.out. untuk meminimalkan memori variabel : int bil = Integer.println(" "+bil+" adalah bilangan ganjil").Scanner.4 Menentukan Bilangan Prima Di bawah ini adalah contoh script untuk menentukan sebuah bilangan yang kita masukan termasuk bilangan prima atau bukan.println(" "+bil+" adalah bilangan genap").out.in ). } } 63 . public class EdobilPrima{ public static void main( String[] args ) { Scanner input = new Scanner( System. } else if (bil % 2==0) { System. Pada script diatas merupakan logika yang digunakan untuk menentukan bilangan yang kita inputkan itu termasuk bilangan genap atau bilangan ganjil jika kita uraikan maksud kondisi if(bil%2!=0) tersebut dimana jika nilai yang kita inputkan dimodulus dengan dua dan hasilnya sisa bagi tidak sama dengan nol. e.out. bil = input. System. 6.

} catch(IOException e) { System. class edocoba { public static void main(String args[]) { DataInputStream in = new DataInputStream(System. String nama="". bukan bilangan prima.} Program diatas jika kita compile akan tampil seperti berikut : Gambar 6. char c. jika tidak sesuai kondisi kedua maka otomatis termasuk bilngan prima. String alamat="".out.io. char huruf=' '.out.5 Menampilkan Biodata Mahasiswa Di bawah ini adalah contoh script untuk menampilkan biodata mahasiswa.*.in). int angka=0. sesuai yang ditampilkan pada output program diatas.print("Masukan Nama : ").4 Tampilan Output Program Menentukan Bilangan Prima Pada dasar untuk mencari bilangan prima adalah jika semua bilangan yang dibagi dan mempunyai modulus tidak sama dengan nol ( bilangan%2 !=0) maka dikatakan bilangan prima. String kelas="". 6. nama = in. String kalimat="". try { System. import java. sedangkan jika kondisi kedua jika bilangan habis dibagi 2.readLine(). Sehingga pada program diatas menggunakan logika jika bilangan sama dengan 2 adalah bilangan prima.} 64 .println(e).

out.} try { System. } catch(IOException e) { System.parseInt(kalimat).out.println(e).println("ALAMAT : "+alamat). System.} try { System. alamat = in.out.readLine().out. } catch(IOException e) { System.print("Masukan npm : ").out.println("NPM : "+angka).println(e).out. System.println("=======BIODATA======= System.readLine().out.out. System.try { System. } } ").} System.println("KELAS : " +kelas).println(e). kelas = in. kalimat = in.println("NAMAr : " +nama). Program diatas jika kita compile akan tampil seperti berikut : Gambar 6. } catch(IOException e) { System.print("Masukan Alamat : ").readLine().out.print("Masukan Kelas : ").out. angka = Integer.5 Tampilan Output Program Menampilkan Biodata Mahasiswa 65 .out.

1.io. i++) { hasil=hasil*i.println(i + "\t" + hasil).println("Inputan error").*. } } } Output dari program factorial for diatas lihat gambar dibawah ini : 66 . i<=n.readLine()). for(int i=1.1 Menampilkan Bilangan Faktorial 7.in)). for . int n=0.println("Masukkan bilangan faktorial: ").1 Menampilkan Bilangan Faktorial dengan For Lihat script program dibawah ini : import java.out. } catch(IOException e) { System. } System.out. do – while.println("n \t n!").out. 7.out.BAB VII PERULANGAN Perulangan pada pemrograman java juga dibedakan menjadi 3 bagian yaitu. continue.parseInt(inputan. dan break / continue dengan label ). dan while serta memiliki kondisional untuk perulangan ( break . int hasil=1. System. System. try{ n=Integer. public class Edofaktorialfor { public static void main(String args[]) throws IOException{ BufferedReader inputan = new BufferedReader(new InputStreamReader(System.

println("Inputan error").out. } System. while(i<=n) { hasil=hasil*i. int i=1.out.io.println(i + "\t" + hasil). public class EdofaktorialWhile { public static void main(String args[]) throws IOException{ BufferedReader inputan = new BufferedReader(new InputStreamReader(System.in)).1 Menampilkan Bilangan Faktorial dengan For 7. i++. int hasil=1.parseInt(inputan. try{ n=Integer.println("n \t n!"). } catch(IOException e) { System. int n=0.out.println("Masukkan bilangan faktorial: ").out. System.2 Menampilkan Bilangan Faktorial dengan While Lihat script program dibawah ini : import java.Gambar 7. } } } Output dari program factorial While diatas lihat gambar dibwah ini : 67 .*.1. System.readLine()).

in)). } System.out.println(i + "\t" + hasil). public class EdofaktorialDoWhile { public static void main(String args[]) throws IOException{ BufferedReader inputan = new BufferedReader(new InputStreamReader(System. i++. int i=1.3 Menampilkan Bilangan Faktorial dengan Do .Gambar 7. } while(i<=n). System.out.While Lihat script program dibawah ini : import java.out. int n=0.out.readLine()). int hasil=1.1. System. } } Output dari program factorial Do – While diatas lihat gambar dibwah ini : 68 .println("Masukkan bilangan faktorial: ").parseInt(inputan.2 Menampilkan Bilangan Faktorial dengan While 7. do{ hasil=hasil*i. } catch(IOException e) { System. try{ n=Integer.println("Inputan error").*.println("n \t n!").io.

fak = 7. dan ‟fak‟ = 7. kemudian variabel ‟fak‟ digunakan sebagai pendefinisian variabel dari angka yang diinput user.3 Menampilkan Bilangan Faktorial dengan Do . a. Sedangkan variabel ‟fak‟ digunakan sebagai definisi dari variabel angka yang ingin diketahui hasil faktorialnya berdasarkan inputan user. yakni variabel ‟hasil‟. Faktorial terjadi dalam kondisi perulangan ‟for(int i=1. Adapun untuk logika penjabaran program di atas dapat dijabarkan sebagai berikut. Kemudian variabel ‟fak‟ didefinisikan sebagai faktorial (!) dari variabel i. kemudian program memberikan kondisi apakan nilai ‟i‟ <= variabel ‟fak‟ atau tidak.i<=fak. Hal ini berarti nilai ‟i‟ dengan harga awal = 1.i++)‟. Pada tiap tahapan proses variabel ‟i‟ ini nilainya akan bertambah 1. Variabel ‟hasil‟ diberikan nilai awal = 1. maka program akan mencetak ”x” dibelakang variabel ‟i‟. Variabel i digunakan sebagai batasan dari simbol faktorial. maka diberikan nilai awal dari ‟hasil‟ = 1 dan nilai awal ‟i‟ = 1. jika ‟i‟ <= ‟fak‟. i =1. Jika ‟fak‟ ! =i. variabel ‟i‟. Misalnya kita akan mencari hasil faktorial dari 7.Gambar 7. maka nilai ‟i‟ akan bertambah ‟1‟. selain itu program akan mencetak ”=”.While Pada program faktorial ini terdapat 3 buah variabel. dan variabel ‟fak‟. variabel ‟hasil‟ digunakan sebagai hasil yang akan diberikan terhadap faktorial. 69 . Maka : b. Kemudian akan menampilkan cetakan berupa ”Hasil dari ‟fak‟! adalah ‟hasil‟”. hasil = 1.

hasil = 6. n. i =3. hasil = ‟hasil‟*‟i‟ f. Untuk selanjutnya nilai i akan bertambah 1 menjadi i=3 p. Jika ‟fak‟ !=‟i‟ maka print (‟i‟+”x”) ? 1x2x3x v. i<=fak?? (‟i‟ lebih kecil atau sama dengan ‟fak‟ atau tidak?) ? 1<4 d. jika ya. i<=fak?? (‟i‟ lebih kecil atau sama dengan ‟fak‟ atau tidak?) ? 7=7 z. Untuk selanjutnya nilai i akan bertambah 1 menjadi i=2 i. i = 4. i<=fak?? (‟i‟ lebih kecil atau sama dengan ‟fak‟ atau tidak?) ? 3<4 r. ? hasil = 2 * 3 * 4 * 5 * 6 = 5040. hasil = 5040 70 . fak = 7 q. selain itu print(‟i‟+”=”) ? 1x2x3x4x5x6= dd. maka variabel i akan bertambah 1 s. fak = 4 j. x. karena i=fak maka variabel i tidak bertambah maka print (‟i‟+”x”) ? 1x2x3x4x5x6 aa. hasil = 2. ? hasil = 2 * 3 =6. Jika ‟fak‟ !=‟i‟ maka print (‟i‟+”x”). Jika ‟fak‟ !=‟i‟ maka print (‟i‟+”x”) ? 1x2x o. ? hasil = 1 * 1 =1. maka variabel i akan bertambah 1 e.c. i = 2. dan seterusnya hingga i = 7. fak = 4 y. g. ? hasil = 1 * 2 =2. hasil = ‟hasil‟*‟i‟ m. jika ya. maka variabel i akan bertambah 1 l. i<=fak?? (‟i‟ lebih kecil atau sama dengan ‟fak‟ atau tidak?) ? 2<4 k. jika ya. hasil = ‟hasil‟*‟i‟ t. cc. hasil = ‟hasil‟*‟i‟ bb. hasil = 1. Jika ‟fak‟ !=‟i‟ maka print (‟i‟+”x”) ? 1x h. u. Untuk selanjutnya nilai i akan bertambah 1 menjadi i=4 w.

println ("Iterasi ke" + i). do { System.out. 7.3 Pemakaian Label pada Kondisi Continue 71 . i++. } } Jika script diatas dijalankan pada command prompt seperti gambar dibawah ini : Gambar 7.2 Perulangan dengan Break Dibawah ini adalah script perulangan dengan do – while serta kondisional perulangan break : class EdoBreakLoop { public static void main (String args []) { int i = 0. 7.4 Tampilan Output Program Perulangan Dengan Break Break merupakan kondisional perulangan yang berfungsi membatasi sebuah atau memberhentikan program sesuai kondisi yang di berikan. if (i > 10) break. Misalkan program diatas menampilkan urutan 1 – 10 karena batas iterasi yang kita masukan nilai 10. } while (true).Untuk selanjutnya program akan mencetak tampilan berupa ”Hasil dari ‟+fak+‟! adalah ‟+hasil‟” Oleh karena itu program tersebut akan memberikan output berupa ”1x2x3x4x5x6 = Hasil dari 7! adalah 5040”.

b = "+b).b<3.Dibawah ini merupakan script program perulangan for yang menggunakan label pada kondisional continue : public class EdoContinueLabel{ public static void main(String[] args){ int a. Oleh karena itu program tersebut akan memberikan output berupa : 72 .a<2.      Misalnya variabel a = 0 dan jika 0 < 2 (lebih kecil dari 2) sehingga pernyataan benar.b.b++){ if(b==1) continue Mulai.out.5 Tampilan Output Dari Program Looping Dengan Continue Label Continue label disini membatasi suatu kondisi perulangan dan melanjutkan kembali pada kondisi perulangan selanjutnya. Sehingga variabel b = 0 dan jika 0 < 2 sehingga pernyataan benar. b = 0 Jika a = 1 maka 1 < 2 pernyataan benar Dan pada variabel b bertambah 1 namun pada program terdapat kondisional yan membatasi jika b ==1 maka kembali ke loop awal yaitu kembali ke variabel a.b= "+b). sehingga hasilnya b = 0 Untuk selanjutnya program akan mencetak tampilan berupa ("a= "+a+". Mulai: for(a=0. } } } } Jika script program perulangan for dengan continue label kita jalankan maka hasilnya sebagai berikut : Gambar 7. Kembali ke a++ artinya jika bertambah 1 menjadi a = 1 Hasil looping pertama a = 0 .println("a = "+a+" .a++){ for(b=0. System.

4 7.kolom<=8.out.baris<=8.print("#"). 7. } System. a = 1 . } }} Dibawah ini adalah hasil dari compile script diatas : Gambar 7.4.a = 0 .print("\n").6 Tampilan Output Dari Susunan Segi Empat 7.1 b = 0 b = 0 Menampilkan Susunan Deretan Karakter Menampilkan susunan segi empat Dibawah ini adalah contoh percobaan untuk menampilkan susunan segi empat menggunakan perulangan for dan input scanner. public class Edosegiempat{ public static void main(String []args){ int baris. for(baris=1.out.kolom++) { System.4.kolom.2 Menampilkan Susunan Setengah Segi Tiga Dibawah ini adalah script untuk membuat sebuah segitiga siku-siku dengan perulangan : 73 .baris++) { for(kolom=1.

print("\n").a++){ for(b=1.} System.7 Tampilan Output Program susunan Setengah Segitiga Program ini merupakan program untuk menampilkan sebuah setengah segitiga dimana program ini menggunakan for.a<=10. for(x=1.3 Menampilkan Susunan Setengah Segitiga Terbalik Dibawah ini adalah contoh percobaan untuk menampilkan deret dari sebuah bilangan prima : public class Edosegitigaterbalik{ public static void main (String[]args){ int x.b++){ if(a<=10) System.out.y.out.x<=9. for(a=1.4.print("*").dan jika program ini di jalankan akan menjadi seperti pada gambar 7.b<=a.7 7.x++){ 74 .public class Edosegitiga{ public static void main (String[]args){ int a. }} } Program tersebut jika dijalakan pada command prompt akan menghasilkan output sebagai berikut : Gambar 7.b.

print("\n").util.print("Masukkan nilai batas atas: ").out.8 7. public class EdoPrima2 { public static void main( String[] args ) { Scanner input = new Scanner( System. System. max.} }} Dibawah ini ada.8 Tampilan Dari Output Program Setengah Segitiga Terbalik Program ini merupakan program untuk menampilkan sebuah segitiga siku-siku dima program ini menggunakan for.5 Menampilkan Deret Bilangan Prima Dengan Batasan Sesuai Inputan Dibawah ini adalah contoh percobaan untuk menampilkan deret dari sebuah bilangan prima : import java.out.i++) { prima=false. for (i=0. 75 . System. max = input.} System.dan jika program ini di jalankan akan menjadi seperti pada gambar 7.nextInt().for(y=x.out. boolean prima.print("*"). j. float rata.ah tampilan output dari script diatas jika dijalankan pada command prompt : Gambar 7.y++){ System.Scanner.println("bilangan prima ===================="). int i.out.i<=max.y<=9.in ).

} } Dibawah ini adalah tampilan output dari script diatas jika dijalankan pada command prompt : Gambar 7. break. } } System.if (i==2) prima=true. Sebagaimana sesuai dengan tampilan pada hasil output gambar 7.print(" "+i).println(" "). } } if (prima) // prima = true { System. dimana jika batas akhir yang kita inputkan maka akan membatasi deret bilangan .j++) { if (i % j==0) { prima=false. // keluar dari looping } else prima=true.out. secara logika rumus untuk menampilkan deret prima adalah jika kita inputkan 15 maka akan diproses sedemikian jika nilai = 2 maka.j<i. maka melalui kondisi kedua dimana jika nilai di modulus 2 tidak sama dengan nol maka juga prima dan seterusnya hingga pada batas akhir yang kita inputkan.9 Tampilan Dari Output Program Deret Bilangan Prima Merupakan progam yang menampilkan deret bilangan prima.9. else { for (j=2. ketika file di tambah 1 menjadi nilanya 3 maka di proses tidak sama dengan kondisi pertama. 76 .out. alasan pertama prima jadi benar.

Buka installer Netbeans Kita yang ada di drive D Gambar 8.1-Ml-Windows Pada Localdisk (D:) 2. 3.0. Gambar 8. Setelah proses loading selesai. atau klik kanan Run As Untuk mode Safe.1 Tampilan Installer Netbeans 7.0 versi Windows : 1.3 Tampilan Configurasi IDE 77 . akan muncul proses initializes.1 Instalasi Netbeans IDE Dibawah ini adalah langkah dalam proses instalasi Netbeans IDE 7. Dan tunggu hingga 100% loading.BAB VIII PENGENALAN IDE PADA JAVA 8. Klik double untuk menjalakan installer Administrator installer… selesai.2 Tampilan Proses Konfigurasi System. Tunggu hingga proses configuring the Gambar 8.

0.5 Tampilan License Agreement Pada Saat Instalasi Netbeans IDE 6. Instal Junit untuk install JUnit kemudian klik Next 78 . Seperti tampilan dibawah ini Gambar 8. Kemudian pilih I Accept the term in the license agreement.4. kemudian tekan next untuk melanjutakan ke tahap selanjutnya.4 Tampilan Welcome Pada Saat Instalasi Netbeans IDE 5. Kemudian akan muncul Welcom to the NetBeans IDE 7. Langkah berikutnya centang kotak I accept the terms in the license agreement.1 Installer Gambar 8.

8 Tampilan Dari Glassfish 3. kemudian tekan next Gambar 8.7 Tampilan NetBeans 7.6 Tampilan JUnit License Agreement 7.1. Tahap selanjutnya proses sikronisasi antar NetBeans IDE dengan JDK yang telah terinstal pada computer anda. 79 . Tahap berikutnya proses installisasi GlassFish 3. Selanjutnya proses instalasi semua program yang dipilih dan klik Install untuk mulai persiapan proses insatalasi. Kemudian tekan next Gambar 8.1 Instalasi 9.01 Installation JDK 8.Gambar 8.

Proses selanjutnya tunggu hingga proses laoding dan registry file selesai. Gambar 8. Buka dan jalankan sehingga akan muncul start up dari program NetBeans 80 . Gambar 8.9 Tampilan Dari Summary Dan Total Ukuran Memori Instalasi 10.Gambar 8. Proses installasi selesai tekan Finish untuk mengakhiri proses semuanya.10 Tampilan Proses Installation Netbeans Dan Runtimes 11.11 Tampilan Instalation Netbeans Completed Successfully 12.

1 anda atau versi sebelumnya .0.0. sehinnga akan muncul gambar seperti dibawah ini : 81 .1 13.13 Tampilan Dari Start Page Netbeans 7. perhatikan urutan dibawah ini : 1.12 Tampilan Dari Start-Up Netbeans IDE 7.1.2 Menjalakan Java Console pada NetBeans IDE Langkah – langkah dalam menjalankan java console pada NetBeans IDE 7.0 seperti dibawah ini : Gambar 8.Gambar 8.1 8. Buka NetBeans IDE 7. Kemudian akan muncul tampilan start page dari NetBeans IDE 7.0.0.

0.16 Tampilan New Project 82 . Klik File – New Project atau bias dengan tombol keyboard Ctrl+Shift+N Gambar 8.14 Tampilan Start Up Home Netbeans IDE 7. Pilih Categories: Java .1 2.15 Tampilan Dari Menu File – New Project 3.Gambar 8.kemudian Java Application selanjutnya klik Next Gambar 8.

kemudian next. kemudian pilih Types : Java Main Class . Isi project name dan perhatkan project location-nya. Gambar 8. isi project name dengan nama anda misalnya HalloEdo .17 Tampilan New Java Aplication 5. project location : merupakan letak dimana file project java yang dibuat.18 Tampilan Memilih Java Class 83 . Buatlah file java console dengan cara Klik File – New File atau Ctrl+N Pilih kategori : Java. Secara default project akan tersimpan pada My Document dalam folder NetBeansProjects.4. Gambar 8. 6.

Gambar 8. location pada source packages.19 Tampilan mengisi aplikasi 9.(lihat gambar 8. Pastikan isi class name. dan packages pada project yang kita buat.19) 84 . serta Created file harus sama dengan classname yang kita buat. Save program dengan Ctrl+Shift+S .Misalkan kita buat program HalloEdo Gambar 8. dan selanjutnya jalankan program dengan F6.18 Tampilan memilih tempat penyimpanan java class 8. Kemudian klik finish.7. Buatlah program atau ketikanlah program dibagian bawah public static void main (string [ ] args). project yang telah kita buat.

Gambar 8.19 Tampilan save program dan menjalankan program

8.3 Menjalankan Java GUI pada NetBeans IDE Dibawah ini merupakan langkah – langkah cara untuk menngunakan Java GUI pada NetBeans IDE, perhatikan tahap – tahapnya : 1. Buatlah File GUI dengan Cara klik File – New File, Pilih kategoris yang swing GUI forms dengan Types JFrame Form . kemudian tekan Next.

Gambar 8.20 Tampilan Jendela New File Untuk Memilih Java GUI

2. Isi class name pastikan project yang telah kita buat, location source packages, project yang telah kita buat juga, created file : file sama dengan class name yang dibuat. Kemudian tekan finish

85

Gambar 8.21 Tampilan Jendela New Jframe Form

3. Buatlah Program GUI seperti berikut

Gambar 8.22 Tampilan Program Menampilkan Nama Saya

4. Tambahkan action pada button OK dengan Klik kanan button pilih Event – Actions – actionPerformed.

Gambar 8.23 Tampilan Cara Memberikan Action Pada Button

86

5. Pada baris program tambahkan script seperti berikut :
Jlabel3.setText(“ Guruh Putro Dirgantoro “);

Gambar 8.24 Tampilan Letak Action Button Kita Pada Source Program

6. Jalankan program dengan tekan Shift+F6 maka akan muncul jendela baru aplikasi sederhana kita.

Gambar 8.25 Tampilan GUI Program Menampilkan Nama Lengkap Saya

Jika kita menekan button OK maka tanda Tanya ( jLabel3 ) akan berganti nama anda , sesuai source kita. Misalnya :

Gambar 8.26 Tampilan Hasil Program GUI Menampilkan Nama Saya Setelah Di Klik OK

87

project yang telah kita buat juga.28 Tampilan Jendela New Jframe Form 88 . Isi class name pastikan project yang telah kita buat. Buatlah File GUI dengan Cara klik File – New File. location source packages. kemudian tekan Next.4 Membuat Program Penjumlahan Java GUI pada NetBeans IDE Dibawah ini merupakan langkah – langkah cara untuk menngunakan Java GUI pada NetBeans IDE. Pilih kategoris yang swing GUI forms dengan Types JFrame Form . Gambar 8. Kemudian tekan finish Gambar 8. created file : file sama dengan class name yang dibuat.27 Tampilan Jendela New File Untuk Memilih Java GUI untuk membuat program penjumlahan 2.8. perhatikan tahap – tahapnya : 1.

parseInt (jTextField2. Buatlah Program GUI seperti berikut Gambar 8. jTextField3. Gambar 8. b=Integer.getText()).toString(a+b)).getText()). Tambahkan action pada button OK dengan Klik kanan button pilih Event – Actions – actionPerformed.b. a=Integer.parseInt (jTextField1.setText (Integer. Pada baris program tambahkan script seperti berikut : int a. 89 .29Tampilan Program Menampilkan Penjumlahan 2 Angka 4.30 Tampilan Cara Memberikan Action Pada Button 5.3.

setText (""). Gambar 8. 90 . Pada baris program tambahkan script seperti berikut : jTextField1. jTextField2.setText (""). Ketik desain untuk kembali ke desain dan membuat Source program pada button 2.setText ("").33 Tampilan Cara Memberikan Action Pada Button2 8.31 Tampilan Letak Action Button 1 Kita Pada Source Program 6. Tambahkan action pada button Hapus dengan Klik kanan button pilih Event – Actions – actionPerformed. Setelah selesai membuat Source program pada Button 1.32 Tampilan Desain Program 7.Gambar 8. jTextField3. Gambar 8.

Seperti gambar berikut 91 . Ketik angka untuk memulai menguji apakah program yang di buat benar. dan akan kembali ke halaman program pada awal dijalankan. Jika kita tekan Ok maka pada hasil akan menampilkan angka 87.34 Tampilan Letak Action Button 2 Kita Pada Source Program 9.Gambar 8. kita bisa klik Hapus pada program tersebut. Misalkan saya masukkan angka 1 adalah 60. Jalankan program dengan tekan Shift+F6 maka akan muncul jendela baru aplikasi sederhana kita. dan jika kita ingin mengulang penjumlahan.35 Tampilan program setelah dijalankan 10.36 Tampilan program setelah di isi nilai dan di jalankan 11. Setelah kita jalankan. dan angka 2 adalah 27. Gambar 8. Gambar 8.

Pilih kategoris yang swing GUI forms dengan Types JFrame Form .Gambar 8. Gambar 8. project yang telah kita buat juga.4 Membuat Program Biodata Mahasiswa Java GUI pada NetBeans IDE Dibawah ini merupakan langkah – langkah cara untuk menngunakan Java GUI pada NetBeans IDE. Buatlah File GUI dengan Cara klik File – New File. location source packages. kemudian tekan Next.38 Tampilan Jendela New File Untuk Memilih Java GUI 2. created file : file sama dengan class name yang dibuat. Kemudian tekan finish 92 . Isi class name pastikan project yang telah kita buat.37 Tampilan program setelah isi nilai di Hapus 8. perhatikan tahap – tahapnya : 1.

40 Tampilan Program Menampilkan Biodata Mahasiswa 4.Gambar 8. Gambar 8. Tambahkan action pada button OK dengan Klik kanan button pilih Event – Actions – actionPerformed.39 Tampilan Jendela New Jframe Form 3. Buatlah Program GUI seperti berikut Gambar 8.41 Tampilan Cara Memberikan Action Pada Button 1 93 .

5. Pada baris program tambahkan script seperti berikut : String a=jTextField1.getText(); String b=jTextField2.getText(); String c=jTextField3.getText(); String d=jTextField4.getText(); jTextField5.setText(""+a); jTextField6.setText(""+b); jTextField7.setText(""+c); jTextField8.setText(""+d);

Gambar 8.42 Tampilan Letak Action Button 1 Kita Pada Source Program

6. Setelah selesai membuat Source program pada Button 1. Ketik desain untuk kembali ke desain dan membuat Source program pada button 2.

Gambar 8.43 Tampilan Desain Program

94

7. Tambahkan action pada button Hapus dengan Klik kanan button pilih Event – Actions – actionPerformed.

Gambar 8.44 Tampilan Cara Memberikan Action Pada Button 2

8. Pada baris program tambahkan script seperti berikut :
jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText(""); jTextField4.setText(""); jTextField5.setText(""); jTextField6.setText(""); jTextField7.setText(""); jTextField8.setText("");

Gambar 8.45 Tampilan Letak Action Button 2 Kita Pada Source Program

9. Setelah selesai membuat Source program pada Button 2. Ketik desain untuk kembali ke desain dan membuat Source program pada button 3.

95

Gambar 8.46 Tampilan Desain Program

10. Tambahkan action pada button Exit dengan Klik kanan button pilih Event – Actions – actionPerformed.

Gambar 8.47 Tampilan Cara Memberikan Action Pada Button 3

11. Pada baris program tambahkan script seperti berikut : System.exit(0);

Gambar 8.48 Tampilan Letak Action Button 3 Kita Pada Source Program

12. Jalankan program dengan tekan Shift+F6 maka akan muncul jendela baru aplikasi.

96

misalkan 2011 E. Kemudian pada kolom Kelas ketik kelas anda saat ini.Gambar 8.51 Tampilan program setelah di isi Biodata Mahasiswa 97 . misalkan 1412110221. dan pada kolom Alamat ketik Alamat Rumah Anda. misalkan Guruh Putro Dirgantoro. seperti gambar berikut: Gambar 8.50 Tampilan program setelah dijalankan 13. Pada kolom Nama ketik nama anda. Kemudian pada kolom NPM ketik npm anda. misalkan LATSARI TUBAN.

dan akan kembali ke halaman program pada awal dijalankan. Seperti gambar berikut Gambar 8. dan program akan berhenti.52 Tampilan program setelah isi biodata di Hapus 15. 98 . dan jika kita ingin mengulang pengisian Biodata baru. Setelah kita jalankan. kita bisa keluar program dengan cara mengklik button Exit pada program.14. Setelah selesai. kita bisa klik Hapus pada program tersebut.

Jika hasil sudah sesuai seperti gambar dibawah ini berikut. dari dua buah bilangan 1 dengan bilangan 2. Jika untuk membuat kolomnya kita bisa menggunakan Swing Control TextField. buat Program GUI seperti gambar dibawah ini : Gambar 9.1 Tampilan GUI Aplikasi Hitung Sederhana 4. untuk membuat judul Program Hitung Sederhana . Buatlah project baru pada netbeans atau Ctrl+N 2. 99 . kemudian atur lebarnya. Membuat tombol clear dan aritmatika kita bias menggunakan Swing control Button. kita bisa menambahkan action di setiap buttonnya.BAB IX PEMROGRAMAN VISUAL PADA JAVA 9.1 Program Aplikasi Hitung Sederhana Dibawah ini adalah sebuah cara untuk membuat aplikasi hitung aritmatika. kemudian buatlah file java dengan type : JFrame Form 3. 7. Biar tidak membingungan variabelnya kita ganti dengan klik kanan pilih change variable name… 6. 5. Langkah – langkah sebagai berikut : 1. untuk mengganti teksnya cukup klik kanan edit text. Berikan nama variable masing – masing buttonnya. Angka ke 1 . dan Hasil kita bias menggunakan Label.

toString(a+b)). a=Integer. a=Integer. pilih event – action – ActionPerformed.b.getText()).parseInt (jTextField1.parseInt (jTextField2.parseInt (jTextField2.2 Tampilan Program Hitung Sederhana 8. }  Pengurangan private void kurangButtonActionPerformed(java.awt. jTextField3.event.parseInt (jTextField1.  Perkalian private void kaliButtonActionPerformed(java.b. } 100 .awt. b=Integer.awt. inilah scriptnya untuk tiap proses aritmatika.  Penjumlahan private void jumlahButtonActionPerformed(java.setText (Integer.getText()).event.getText()).ActionEvent evt) { // TODO add your handling code here: int a.ActionEvent evt) { // TODO add your handling code here: int a.event.getText()).setText (Integer.toString(a*b)).ActionEvent evt) { // TODO add your handling code here: int a. a=Integer.parseInt (jTextField2. Untuk menambah action button kita cukup klik kanan button. b=Integer. jTextField3. b=Integer.Gambar 9.getText()).parseInt (jTextField1.b.getText()).

bagaimana hasilnya? Lihat gambar dibawah ini : 101 . Gambar 9.4 Tampilan Hasil Program Hitung Pengurangan Selanjutnya kita coba mengklik tombol kali.getText()).toString(a/b)). jika kita klik tombol clear maka akan menghapus nilai di dalam semua kolom. Pembagian private void bagiButtonActionPerformed(java.b.getText()). Kita coba tekan tombol pengurangan maka hasil 21 . a=Integer.parseInt (jTextField1. seperti yang di tampilakn pada gambar dibawah ini : Gambar 9.parseInt (jTextField2. b=Integer.3 Tampilan Hasil Program Hitung Aritmatika Penjumlahan Sehingga akan menampilakan hasil nilai 27 = 24 + 3. Untuk percobaan kita coba masukan nilai 24 pada kolom 1 dan nilai 3 pada kolom 2. } 9.ActionEvent evt) { // TODO add your handling code here: int a.awt. jTextField3.event.setText (Integer.

Gambar 9.event. seperti yang ditampilkan pada gambar dibawah ini : Gambar 9.setText("").5 Tampilan Hasil Program Hitung Perkalian Yang terakhir jika kita klik tombol kali maka akan melakukan proses aritmatika pembagian.awt.6 Tampilan Hasil Program Hitung Pembagian Jika kita mengkosongkan isian kolom. jTextField2. kita cukup klik tombol clear dengan action scriptnya dibawah ini : private void jButton5ActionPerformed(java. } Sehingga tampilan menjadi kosong lagi : 102 .setText("").ActionEvent evt) { // TODO add your handling code here: jTextField1. jTextField3.setText("").

3 – 4 lihat gambar dibawah ini. Gambar 9. Buatlah kolom teks dengan JTextField. jangan lupa kita perhatikan letak project apilcation atau source packages sudah sesuai dengan sebelumnya. Buat file project baru dengan Ctrl+N. kemudian klik kanan untuk mengedit teks label. Tahap – tahap pembuatan programnya adalah sebagai berikut : 1.Gambar 9. Buatlah teks atau tulisan di panel dengan JLabel. Untuk lebih jelas pada no. 4. Buat Class Name sesuai nama anda.2 Membuat Program Data Mahasiswa Dibawah ini merupakan contoh program java menggunakan komponen Swing yang memungkinkan kita bisa menyimpan data yang kita inputkan. 3. yang perlu diingat selalu ubahlah nama variable yang sesuai label kolom tersebut.8 Tampilan GUI Program Biodata Mahasiswa Pada Netbeans 103 .7 Tampilan Hasil Program Setelah Di Klik Tombol Hapus 9. 2.

event.event.setText(""). String d=jTextField4. jTextField4. Setelah itu Run File dengan tekan kombinasi Shift+F6 sehingga akan muncul tampilan gambar seperti dibawah ini : 104 . String c=jTextField3. } 6.getText(). jTextArea1.5.setText("Nama :"+a+"\nNPM :"+b+"\nProdi :"+c+"\nUniversitas :"+d). } 7.setText("").lihat gambar : Gambar 9.awt. action.getText().9 Tampilan Cara Memberi Action Pada Button Save Setelah itu masukan scriptnya pada blok action button tersebut : private void jButton1ActionPerformed(java.ActionEvent evt) { // TODO add your handling code here: jTextField1.setText("").getText().awt. jTextField3. jTextField2. Buatlah action pada tombol cancel juga dengan script dibawah ini : private void jButton2ActionPerformed(java. String b=jTextField2.setText("").ActionEvent evt) { // TODO add your handling code here: String a=jTextField1.setText(""). kemudian klik kanan buat events. pilih actionperformed.getText(). jTextArea1. Buatlah tombol Ok dengan JButton .

11 Tampilan Input Data Pada Program Biodata Mahasiswa 105 . Coba kita masukkan data seperti gambar berikut : Gambar 9.Gambar 9.10 Tampilan Interface Program Biodata Mahasiswa 8.

} Pada script diatas pada button-nya menggunakan variable jButton3.setText("").9.event.setText(""). sehingga pada private void nya ada tulisan …jButton3actionperformed(…) 4. jTextField2.setText("").12 Tampilan Program Aplikasi Sederhana Pendaftaran Online.ActionEvent evt) { // TODO add your handling code here: jTextField1. serta tombolnya agar tidak sulit dalam penulisan source-nya. Ubah nama variable tiap kolom teks. 3. jTextField5. Buatlah interface programnya sedimikan rupa seperti gambar 9. combo box.awt.3 Program Aplikasi Sederhana Dibawah ini merupakan aplikasi yang berbasis pewarisan dan memiliki 3 tampilan halaman yang saling berlanjut. 1.ActionEvent evt) 106 .awt.event.12 2.setText("").setText(""). Gambar 9. Buat events action tombol HAPUS dengan menyisipkan scriptnya dibawah ini : private void jButton3ActionPerformed(java. Selanjut membuat action tombol dari NEXT dengan memasukkan source code di antara private class-nya seperti berikut : private void jButton1ActionPerformed(java. jTextField4. jTextField3. Tahap pertama mari kita buat halaman yang pertama seperti tampilan berikut.

getSelectedItem()+" "+jComboBox2. tgl++) { jComboBox1.getText().event.exit(0).c = jTextField3.getText()+". dan tahun. this."+jComboBox1.b = jTextField2.a = jTextField1.addItem(tgl). Selanjutnya buat action buttonnya pada EXIT dengan menyisipkan scriptnya seperti dibawah ini : private void jButton2ActionPerformed(java.awt. } for (int a=1985. } 5. . dengan cara klik kanan pada panel pilih events.addItem(a). form2.ActionEvent evt) { // TODO add your handling code here: System.event. terus windowsopened setelah itu masukkan source code yang termasuk loop untuk item selectednya: private void formWindowOpened(java.getSelected Item(). Februari.Desember maka saya buat manual. tgl<=31.getText(). bulan .setVisible(true). a<=2030. } } 7. untuk bulan karena tampilannya seperti Januari. Terakhir kita buat window opened untuk tampilan tanggal . } 6.getText().getText().e = jTextField5.getSelectedItem()+""+jComboBox3. form2. form2. lengkah-langkahnya adalah : 107 .awt. form2. window.WindowEvent evt) { // TODO add your handling code here: for (int tgl=1. form2.setVisible(false).{ // TODO add your handling code here: EdoHalaman2 form2 = new EdoHalaman2(). form2.d = jTextField4. a++) { jComboBox3.

klik ComboBox2 satu kali – pada ComboBox2 properties – pilih model – klik gambar yang dilingkari seperti Gambar berikut: Gambar 9.14 Tampilan untuk mengimputkan tampilan bulan 8. Selanjutnya kita buat tampilan interface untuk halaman yang kedua. seperti gambar berikut : 108 .13 Tampilan untuk membuat tampilan bulan secara manual Maka akan muncultampilan seperti berikut: Gambar 9.

ActionEvent evt) { // TODO add your handling code here: EdoHalaman3 form3 = new EdoHalaman3(). form3.d = d.g = jTextField2. Kemudian membuat halaman 3 untuk menyimpan hasil input dari halaman 1 dan 2.setVisible(true). Buat button actionnya FINISH dengan menyisipkan source code dibawah ini : private void jButton1ActionPerformed(java.15 Tampilan Halaman Kedua Program Pendaftaran Online 9.c = c. Gambar 9. form3.event. this.f = jTextField1.awt. form3. form3.16 Tampilan Halaman Ketiga Program Pendaftaran Online Dengan menambahkan source code pada action button : 109 . form3.e = e. form3. } 10. form3.getText().setVisible(false).getText(). form3.a = a.b = b.Gambar 9.

Setelah semua halaman selesai kita coba menjalankan programnya. Lihat gambar – gambar dibawah ini : Gambar 9.18 Tampilan Input Data Pada Halaman Kedua Program Pendaftaran Online.private void formWindowOpened(java.setText("Nama :"+a+"\nAlamat :"+b+"\nTTL :"+c+"\nAsal Sekolah :"+d+"\nJurusan :"+e+"\nPilihan 1 :"+f+"\nPilihan 2 :"+g).event.awt. Dan memasukkan data.17 Tampilan Input Data Pada Halaman Pertama Program Pendaftaran Online.WindowEvent evt) { // TODO add your handling code here: jTextArea1. } 11. Gambar 9. 110 .

anda dapat mengklik halaman 2. 111 . sehingga akan menjalankan program dari awal lagi. dan ketika data yang kita imputkan ada kesalahan misal pada Halaman 1. isi kolom di halaman kedua (lihat gambar 9. kemudian mengklik tombol next maka akan data akan tersimpan sementara pada masing-masing variable.Gambar 9.17).19). kemudian tekan finish untuk menampilkan semua data yang kita inputkan sebelumnya (lihat gambar 9. anda dapat mengklik Button halaman 1.19 Tampilan Input Data pertama dan kedua jika di klik finish. Ketika anda menjalankan program tersebut pada halaman pertama anda memasukan biodata anda secara lengkap (lihat gambar 9. Dan apabila ada kesalahan pada halaman 2.18).

BAB X PEMROGRAMAN BERBASIS OBJEK PADA JAVA 10. untuk menambahkan gambar kita bisa masuk di properties pilih icon dan cari dengan image external. Untuk ingin menambah item menu cukup klik kanan pada panel pilih add menu. cari di galeri gambar anda. PopUp Menu dan Toolbar Dibawah ini merupakan program yang menggunakan menu. popup menu serta toolbar (lihat gambar 10. 2.1 Tampilan Program Yang Menggunakan Toolbar.2 Tampilan Jendela Image Chooser Icon 3. Tahap pertama adalah membuat deretan menu dengan komponen swing menus pilih menu bar.1) dibawah ini : Gambar 10. Klik ok dan kemudin atur ukurannya. Popup Menu Dan Menu 1. Masukkan action pada button simpan dengan menyisipkan source code dibawah ini : 112 .1 Bekerja Menu. Gambar 10. Kemudian buat deretan toolbar.

getText(). dan klik simpan otomatis akan menyimpan pada teks area di bawahnya. jTextArea1.3 Tampilan Input Data Pada Program Popup Menu jika kita klik menu toolbar pendaftaran seperti gambar 10.getText(). Seperti gambar berikut: 113 .4 Tampilan menu toolbar pendaftaran baru Maka akan jendela pendaftaran baru seperti pada modul 7 percobaan 3 pendaftaran online calon mahasiswa baru. Gambar 10. Masukan nama dan NPM anda. Jalankan programnya dengan Shift+F6.private void simpanActionPerformed(java.awt.event.setText("Nama\t:"+a+"\nNPM\t:"+b). } 4.4 berikut : Gambar 10. String b=jTextField2.ActionEvent evt) { // TODO add your handling code here: String a=jTextField1.

} private void initComponents(){ jLabel1 = new JLabel()..setDoubleBuffered(true).setHorizontalAlignment(SwingConstants.5 Tampilan pendaftaran mahasiswa baru Kemudian ikuti langkah seperti modul 7 percobaan 3 atau Bab 9. jLabel1. jLabel1.").*.3 10. setTitle("Hello Edo").swing. jLabel1.setFont(new Font("Arial".swing.awt.add(jLabel1). jLabel1. public class EdoFrameSendiri extends JFrame { private javax.255)). ukuran panel serta warna background panel lihat source code dibawah ini : import java. this.1..setOpaque(true).CENTER).setToolTipText("mengucapkan hello . import javax.204. //constructor area public EdoFrameSendiri(){ initComponents().Gambar 10.2 Membuat JFrame Form Sendiri Dibawah ini adalah percobaan untuk membuat tampilan interface JFrame Form sendiri sehingga secara manual kita coba menyeting mulai dari panel.*.48)).JLabel jLabel1. 114 . jLabel1.setText("Hello Edo").setBackground(new Color(255. jLabel1.EXIT_ON_CLOSE). jLabel1. //customize properties setDefaultCloseOperation(WindowConstants.

getDefaultToolkit().getScreenSize().. ini merupakan dimana jika kita ingin mengubah latar warna tampilannya. 115 .invokeLater(new Runnable() { public void run() { new EdoFrameSendiri().(screenSize.6 Tampilan Program Dengan Jframe Form Sendiri Untuk mengatur dari tampilan diatas kita cukup menuju pada source code yang terkapsulasi pada private void initComponents(){ a) setTitle("Hello Edo"). c) jLabel1. d) jLabel1. ini adalah bagian teks yang akan ditampilan pada JFrame.Dimension screenSize = Toolkit.204)/2.255)).1.setFont(new Font("Arial". } public static void main (String[] args){ EventQueue.255). } } Jika menjalankan source code diatas maka akan muncul tampilan sebagai berikut : Gambar 10.setBackground(newColor(255.setVisible(true).293. merupakan bagian kode program untuk merubah jenis huruf dan mengatur ukuran font. jika kita mengarahkan cursor ke title maka akan muncul teks tersebut.04).setHorizontalAlignment(SwingConstants.. f) jLabel1. dengan mengubah kode warna (255.48)). ini merupakan source code jika anda ingin mengganti judul jframe atau title. b) jLabel1.height .width 393)/2. untuk mengatur tata letak tulisan “Hello Edo ”.merupakan teks cursor. } }).setToolTipText("mengucapkan hello .204. setBounds((screenSize.setText("Hello Edo")."). e) jLabel1.CENTER).204.

anda bisa mengatur sesuai keinginan anda. 116 .4 tersebut.Sehingga menjadi tampilan output seperti gambar 10.

3 Alur Program 1. Sehingga orang tua dapat lebih kondusif lagi dalam memberikan support terhadap anaknya. Isikan nama user di jTextField dengan nama “edo“tanpa tanda ptik (“).2 Latar Belakang Program aplikasi ini dibuat dengan tujuan mempermudah mengetahui jumlah ketidakhadiran siswa dalam mengikuti jam pelajaran. Halaman Login Gambar 11.2 Tampilan Login a.1 Tampilan awal program 2. Splash Image Gambar 11.BAB XI PROGRAM ABSENSI MATA PELAJARAN 11. 11. 117 .1 Judul Program “PROGRAM ABSENSI MATA PELAJARAN” 11.

Nama.KeyEvent evt) { // TODO add your handling code here: if(evt. new main().event.equalsIgnoreCase(Nama.getText())){ //JOptionPane.swing."Good!"). String pass = "edo"."kombinasi nama dan password salah").setText("").VK_ENTER) { Login. Password.requestFocus(). } private void btnExitActionPerformed(java. Kemudian pada jPasswordField masukkan kata sandi / password dengan “edo” tanpa tanda ptik (“).setText("").event. if(user.awt.getKeyCode() == KeyEvent.showMessageDialog(null.getText()) && pass.awt.showMessageDialog(null.setVisible(false).b. } } private void NamaKeyPressed(java. } else { JOptionPane. Nama.ActionEvent evt) { String user = "edo".doClick(). public login() { initComponents().equalsIgnoreCase(Password.event.event.requestFocus().awt.ActionEvent evt) { // TODO add your handling code here: System. } } private void PasswordKeyPressed(java. Jika saat melakukan login ada kesalahan. c.KeyEvent evt) { // TODO add your handling code here: if(evt. maka akan muncul kotak dialog yang bertuliskan “"kombinasi nama dan password salah"”.VK_ENTER) { Password.JFrame { private Object txtUser.getKeyCode() == KeyEvent. private Object txtPassword. this.awt. Dengan source code sebagai berikut : public class login extends javax. } private void LoginActionPerformed(java.exit(0). 118 .setVisible(true).

ijin maupun mangkir/bolos sekolah. c. Menu “Absensi Harian” berguna untuk melakukan absensi ketidakhadiran pada siswa dan siswi dengan keterangan sakit. menambah dan merubah mengenai data guru pengajar. d.JFrame { public main() { initComponents().3 Tampilan menu aplikasi a. e.swing. Menu “Data Guru” digunakan untuk masuk dalam tampilan melihat. menambah dan merubah mengenai data siswa-siswi SMPIT AL USWAH TUBAN perkelasnya. Menu “Data Siswa” digunakan untuk masuk dalam tampilan melihat. Dengan source code sebagai berikut : public class main extends javax. Menu “Jadwal Pelajaran” digunakan untuk menginputkan daftar mata pelajaran yang akan ditempuh oleh pada siswa-siswi perkelasnya.} } 3. Halaman Menu Gambar 11. Menu “Report” merupakan menu yang dihubungkan dengan form menampilkan seluruh data absensi mata pelajaran dari masing-masing siswa. } 119 . b.

setVisible(false).setVisible(true).awt.event.setVisible(false).ActionEvent evt) { // TODO add your handling code here: this. } private void jadwalPelajaranActionPerformed(java.awt.awt.setVisible(false).setVisible(true).ActionEvent evt) { // TODO add your handling code here: this.awt.setVisible(false). new f_dataGuru().event. } private void reportActionPerformed(java.setVisible(true). new f_absensi(). new f_dataSiswa(). new f_absensi().setVisible(false).ActionEvent evt) { // TODO add your handling code here: this.event.private void dataGuruActionPerformed(java.setVisible(true).event.awt.event.ActionEven t evt) { // TODO add your handling code here: this. new f_jadwalMapel().ActionEv ent evt) { // TODO add your handling code here: this. } private void absensiHarianActionPerformed(java. } 120 . } private void dataSiswaActionPerformed(java.setVisible(true).

Untuk merubah data yang telah ada user dapat langsung ngklik ganda pada data miliknya dan langsung merubah data yang sekiranya akan dirubah.simpan_diskon.swing. Halaman Data Guru Gambar 11. kembali. String tambah_data. Mengisi alamat lengkap pada jTextField Alamat. b.swing. c. javax. total_kotor.*.com */ public class f_dataGuru extends javax. javax.JFrame { //deklarasi variabel global double harga.JTable. e.swing. diskon. javax.JTextField. javax.table.swing. quantity.4.swing. Lakukan pengisian sesuai tanggal lahir dengan menekan dan memilih tanggal lahir yang sesuai pada jDateChooser.DefaultTableModel. d. /** * * @author http://khiang.swing. f.sql. bayar. 121 .4 Tampilan halaman daftar guru a.DefaultComboBoxModel. Tekan tombol Tambah untuk memasukkan data baru.JOptionPane. Berikut adalah source codenya : import import import import import import java. javax. Lakukan pengisian sesuai nama pada jTextField Nama Guru.wordpress. Lakukan pengisian sesuai tempat kelahiran pada jTextField Tempat Lahir. total_bersih.

setModel(new DefaultTableModel(data. status=koneksi.getConnection("jdbc:mysql://l ocalhost:3306/aluswah_absensi".last().createStatement(). tbl_barang. int n=rs.AUTO_RESIZE_ALL _COLUMNS).showMessageDialog(null.getString(1). rs.getString(2).getString(3).beforeFirst(). data[p][4]=rs.judul)). } tbl_barang. rs.next()){ data[p][0]=rs. public Statement status. data[p][1]=rs. rs=status.getString(5). } //deklarasi untuk database Connection koneksi./** Creates new form database */ public f_dataGuru() { initComponents().setAlignmentX(CENTER_ALIGNMENT).getRow(). public ResultSet rs."Tempat Lahir".awt. data[p][3]=rs. int p=0. public final String[] judul={"NIP"."root". x.event.ComponentEvent evt) { 122 ."Nama Guru". tbl_barang.""). data[p][2]=rs. while(rs. //prosedure load data ke grid public void loaddata(){ try{ koneksi=DriverManager."Tanggal Lahir"."Alamat"}.getString(4).getMessage()). }catch(SQLException x){ JOptionPane.setAutoResizeMode(JTable. } } private void formComponentShown(java. Object[][] data=new Object[n][7]. p++.executeQuery("select * from db_dataguru").

""). txt_alamat.setText(""). txt_tempatlahir.getU iComponent()).ActionEven t evt) { // tambah data ke database //String tglLahir = ((JTextField)txt__tanggallahir.setText("").getText()+"'. } else{ JOptionPane. } 123 . } loaddata().getText()+"')").setText(""). x.setText("").'"+ ((JTextField)txt__tanggallahir.//panggil prosedure load database ke jendela program loaddata().alamat) values('"+ txt_namaguru. try{ koneksi=DriverManager.tanggallahir.getText()+"'."root".getText()+"'.getMessage()).ActionEvent evt) { // fungsi tombol batal: txt_namaguru.getConnection("jdbc:mysql://l ocalhost:3306/aluswah_absensi".getDateEditor().awt. ((JTextField)txt__tanggallahir.createStatement(). int tambah=status. } private void btn_batalActionPerformed(java.awt.event.getDateEditor().showMessageDialog(null.getDateEditor().tempatlahir.executeUpdate(tambah_data).getU iComponent()). } }catch(SQLException x){ JOptionPane.event. if(tambah==1){ JOptionPane.showMessageDialog(null. "Data gagal ditambah!").'"+ txt_tempatlahir. "Data berhasil ditambah!").getText(). status=koneksi. } private void btn_tambahActionPerformed(java.showMessageDialog(null.getU iComponent()).'"+ txt_alamat. tambah_data=("insert into db_dataguru (nama.

124 .JTable.5 Tampilan halaman daftar siswa a. } } 5.swing.YES_OPTION){ System.event. Lakukan pengisian sesuai tempat kelahiran pada jTextField Tempat Lahir. c. javax. javax. Untuk merubah data yang telah ada user dapat langsung ngklik ganda pada data miliknya dan langsung merubah data yang sekiranya akan dirubah.JOptionPane. javax.private void btn_keluarActionPerformed(java. Tekan tombol Tambah untuk memasukkan data baru.swing. Mengisi alamat lengkap pada jTextField Alamat.awt.sql. Lakukan pengisian sesuai tanggal lahir dengan menekan dan memilih tanggal lahir yang sesuai pada jDateChooser. d.exit(keluar).QUES TION_MESSAGE).DefaultComboBoxModel. if(keluar == JOptionPane.showConfirmDialog(null. Halaman Data Siswa Gambar 11.*.YES_NO_OPTION. Berikut adalah source codenya : import import import import java.JOptionPane.swing. b. "Keluar dari program?". Lakukan pengisian sesuai nama pada jTextField Nama Siswa. f."Exit Program".JOptionPane.ActionEven t evt) { // Keluar Aplikasi int keluar = JOptionPane. e.

String tambah_data. rs."root". } //deklarasi untuk database Connection koneksi."Nama Guru".judul)).executeQuery("select * from db_dataguru").setModel(new DefaultTableModel(data. bayar.JFrame { //deklarasi variabel global double harga. rs=status.next()){ data[p][0]=rs. data[p][4]=rs.createStatement().getString(3). import javax. int p=0. public class f_dataGuru extends javax."Tanggal Lahir". tbl_barang. quantity."Alamat"}. /** Creates new form database */ public f_dataGuru() { initComponents(). rs.""). data[p][2]=rs.last().table.setAlignmentX(CENTER_ALIGNMENT). total_bersih.swing.getString(4).DefaultTableModel. total_kotor. int n=rs.swing.JTextField. diskon.simpan_diskon. status=koneksi. tbl_barang.getConnection("jdbc:mysql://l ocalhost:3306/aluswah_absensi"."Tempat Lahir".getString(5). p++.getRow().AUTO_RESIZE_ALL 125 . kembali.setAutoResizeMode(JTable. public Statement status.import javax. //prosedure load data ke grid public void loaddata(){ try{ koneksi=DriverManager.beforeFirst(). data[p][1]=rs. public ResultSet rs. } tbl_barang.swing.getString(1).getString(2). data[p][3]=rs. Object[][] data=new Object[n][7]. public final String[] judul={"NIP". while(rs.

ActionEvent evt) { // fungsi tombol batal: txt_namaguru. } private void btn_tambahActionPerformed(java.getText(). try{ koneksi=DriverManager.showMessageDialog(null.getMessage()).setText("").getConnection("jdbc:mysql://l ocalhost:3306/aluswah_absensi". txt_alamat.tanggallahir.ComponentEvent evt) { //panggil prosedure load database ke jendela program loaddata().getText()+"')").executeUpdate(tambah_data).getU iComponent()). if(tambah==1){ JOptionPane.getU iComponent()). tambah_data=("insert into db_dataguru (nama."").event.setText("").showMessageDialog(null. x.event.event. ((JTextField)txt__tanggallahir.ActionEven t evt) { // tambah data ke database //String tglLahir = ((JTextField)txt__tanggallahir. status=koneksi.getDateEditor().'"+ txt_tempatlahir.awt._COLUMNS).getText()+"'.createStatement(). int tambah=status.setText("").setText(""). txt_tempatlahir.getText()+"'. }catch(SQLException x){ JOptionPane.getDateEditor()."root". } } private void formComponentShown(java.awt.'"+ txt_alamat. "Data berhasil ditambah!").tempatlahir.getDateEditor().awt.'"+ ((JTextField)txt__tanggallahir. } else{ 126 .alamat) values('"+ txt_namaguru.getText()+"'. } private void btn_batalActionPerformed(java.getU iComponent()).

"Exit Program".showMessageDialog(null.showConfirmDialog(null. } private void btn_keluarActionPerformed(java.awt. } } 6.JOptionPane.showMessageDialog(null. } loaddata(). x. "Keluar dari program?".exit(keluar). Halaman Daftar Mata Pelajaran Gambar 11.getMessage()). } }catch(SQLException x){ JOptionPane.6 Tampilan halaman daftar mata pelajaran 127 .QUES TION_MESSAGE). "Data gagal ditambah!").event.JOptionPane.YES_NO_OPTION. if(keluar == JOptionPane.JOptionPane.ActionEven t evt) { // Keluar Aplikasi int keluar = JOptionPane.YES_OPTION){ System.

Connection.a. e. f. javax.swing.table. Tekan tombol reset untuk menghapus semua isi pada masing-masing field sehingga dapat menambahkan data baru.swing.DriverManager. java.JTable. java. Apabila ingin merubah nama mata pelajaran. Pada kolom kelas tertera angkatan atau kelas yang akan menentukan letak input dan melihat database daftar mata pelajaran berdasarkan kelas masing-masing b.swing.swing. javax.sql. Connection koneksi. g. Masukkan berapa alokasi waktu tatap muka dengan murid dalam satu semester.*. java. Apabila sudah.JOptionPane.ResultSet.SQLException. form.sql. } String tambah_data. dapat menekan tombol “Tambah” untuk memasukkan data matapelajaran ke database.JFrame { /** * Creates new form dataGuru */ public f_jadwalMapel() { initComponents(). selanjutnya adalah memasukkan nama mata pelajaran sesuai kelas. d.*.Statement. 128 .sql. c. java. Berikut adalah source code program tersebut : import import import import import import import import import import backup.sql. user dapat langsung doubleclick pada mata pelajaran yang diinginkan. javax.DefaultTableModel. Apabila telah menekan tombol “Cari”. /** * * @author ertdo */ public class f_jadwalMapel extends javax.sql. java. Tekan tombol “Cari” untuk menentukan kelas mata pelajaran.

setAlignmentX(CENTER_ALIGNMENT)."").beforeFirst().executeQuery("select * from "+mapel_kelas+" ").getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".getString(5).AUTO_RESIZE_ALL_CO LUMNS).getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".awt. x.getString(3). rs=status. tbl_barang. data[p][1]=rs. //data[p][4]=rs.getMessage()). Object[][] data=new Object[n][7]. public ResultSet rs.getString(1). while(rs.getString(2). status=koneksi. 129 . }catch(SQLException x){ JOptionPane."root". } } private void btn_tambahActionPerformed(java. rs.event. int n=rs.getSelectedItem().getString(4). //data[p][3]=rs. tbl_barang."root".getRow(). } tbl_barang.last().setModel(new DefaultTableModel(data.showMessageDialog(null.setAutoResizeMode(JTable.next()){ data[p][0]=rs. public final String[] judul={"Mata Pelajaran".createStatement().""). p++.ActionEvent evt) { // tambah data ke database try{ koneksi=DriverManager. //data[p][2]=rs."Alokasi Waktu"}. rs. //prosedure load data ke grid public void loaddata(){ try{ koneksi=DriverManager. int p=0.judul)).public Statement status. String mapel_kelas = "mapel_kelas_"+comb_kelas.

event. int tambah=status.awt.ActionEvent evt) { // fungsi tombol batal: txt_mapel. String mapel_kelas = "mapel_kelas_"+comb_kelas.WindowEvent evt) { // TODO add your handling code here: loaddata(). } private void jButton1ActionPerformed(java.awt.setText("").showMessageDialog(null.showMessageDialog(null.event.'"+ txt_waktu. } else{ JOptionPane.getText()+"'.getText()+"')"). } 7.event. Halaman Absensi 130 .getSelectedItem(). } private void formWindowOpened(java. tambah_data=("insert into "+mapel_kelas+" values('"+ txt_mapel. loaddata().getMessage()).createStatement().showMessageDialog(null. if(tambah==1){ JOptionPane.status=koneksi. "Data berhasil ditambah!").ActionEvent evt) { // TODO add your handling code here: loaddata().executeUpdate(tambah_data). } loaddata(). } private void btn_batalActionPerformed(java. x.setText("").awt. txt_waktu. } }catch(SQLException x){ JOptionPane. "Data gagal ditambah!").

kita juga memilih pada semester berapa yang sedang berlangsung kemudian klik tombol “Next” untuk lanjutkan proses absensi mata pelajaran. c. Gambar 11. 131 .Gambar 11.7 Tampilan memilih kelas untuk mengetahui mapel b. Pada form ini kita diminta untuk memilih dan kelas dan menclick tombol “Cari Mapel” untuk menampilkan mata pelajaran apa saja yang terdapat pada kelas tersebut seperti gambar dibawah ini.6 Tampilan halaman awal untuk memilih kelas a. Pada form ini kita pertama kali dimintai untuk mengisi tanggal absensi. Jika sudah selesai.

9 Memilih nama siswa tidak hadir 132 .Gambar 11. Gambar 11. Setelah itu pilih tab keterangan ketidakhadiran siswa dan memilih nama siswa yang tidak hadir dengan klik combobox nama siswa berdasarkan keterangan tidak hadirnya.8 Memilih tanggal absensi d.

x. Apabila dianggap cukup Guru dapat langsung mengeluarkan program dengan menekan tombol exit atau memilih tombol menu untuk berpindah ke menu yang lainnya.koneksi(). //panggil koneksi } private void nextActionPerformed(java. x = new KoneksiDb().awt.e.sql.*.10 Tampilan nama siswa yang tidak hadir f. public class f_absensi extends javax.event.JFrame { KoneksiDb x. Berikut source code form tersebut : Form memilih kelas import java. Setelah dirasa cukup Guru dapat menekan tamtol “Simpan Presensi” untuk menyimpan absensi pada database dan dapat melihat siswa yang tidak hadir pada tampilan tabel di atas tombol tersebut. //f_abs2.ActionEvent evt) { // TODO add your handling code here: f_absensi2 f_abs2 = new f_absensi2(). /** * Creates new form dataGuru */ public f_absensi() { initComponents().swing. Gambar 11.kelas=(String) 133 .

SQLException.getSelectedItem(). try { x. public class f_absensi2 extends javax.JTable.ActionEvent evt) { // TODO add your handling code here: ResultSet resul.DefaultTableModel.getSelecte dItem(). } private void jButton1ActionPerformed(java. String mapel_kelas = "mapel_kelas_"+comb_kelas.swing.JFrame { KoneksiDb x. 134 . import java.swing.comb_kelas.awt.swing. } cmb_mapel.JTable.sql.st = x.sql.next()){ cmb_mapel.DriverManager. f_abs2. f_abs2.getSelectedItem(). import javax.Statement.getSelectedItem(). import javax.swing.kelas = ""+comb_kelas.executeQuery("SELECT matapelajaran FROM "+mapel_kelas+" ").swing. import java.DefaultTableModel.table. while (resul.swing.sql. import javax. f_abs2.sql. resul = x.JOptionPane.JTextField.swing. f_abs2.setEditable(false).*. import javax.*.semester=(String) semester. import javax.sql.sql.proteanit.event. import java.swing.DbUtils.ResultSet.mapel=(String) cmb_mapel. import java.DefaultComboBoxModel. } Form absensi tidak hadir import java.getString("matapelajaran")). import net.table.conn.setVisible(false). import javax. } }catch (SQLException e){ return. this.swing.setVisible(true). import javax.getSelectedItem(). import java. import javax.st.addItem(resul.swing.Connection.JOptionPane.getSelectedItem()+comb_kelas2. import javax.createStatement().sql.

ijin9.addItem(resul2.addItem(""). ijin1. x.conn.addItem(resul2. ijin5. ijin8. ijin3. while (resul2.st.getString("nama")). ijin12. ijin6. //panggil koneksi } String tambah_data.addItem("").addItem(""). ijin6.addItem(""). ijin2.addItem(resul2. x. ijin3. ijin5. private void load_combo_nama(){ try { ResultSet resul2. ijin10.getString("nama")).addItem(resul2.as>=12. x = new KoneksiDb().as++).addItem(""). ijin1.addItem(resul2.addItem(resul2.addItem("").addItem(resul2. resul2 = x.getString("nama")). ijin11. public ResultSet rs. //ijin. public Statement status.addItem(resul2.addItem(""). ijin7. ijin7. ijin4. public f_absensi2() { initComponents().addItem(""). ijin2.String kelas. 135 .addItem(""). ijin8. ijin4.addItem("")."Keterangan"}. //ijin1. mapel.next()){ //for(int as=1. public final String[] judul={"Nama".createStatement(). Connection koneksi.addItem("").getString("nama")). semester.addItem("").addItem("").getString("nama")).getString("nama")).executeQuery("SELECT nama FROM "+kelas+" ").addItem(resul2.koneksi().getString("nama")).st = x.getString("nama")).getString("nama")).

createStatement().keterangan FROM "+ke_db_absensi2+" WHERE tanggal='"+txt_tanggal2+"' "). koneksi=DriverManager.judul)).getString(6).setAutoResizeMode(JTable.getSelectedItem(). } }catch (SQLException e){ } } public void loaddata(){ try{ //String pilihan = "jadwalpelajaran_"+kelas. } tbl_absen.executeQuery("SELECT nama. data[p][1]=rs. // data[p][3]=rs. ijin10. ijin11. while(rs. p++.getRow(). rs.getText().addItem(resul2.getString(5). tbl_absen. Object[][] data=new Object[n][7].last(). rs=status."").getString("nama")).setAlignmentX(CENTER_ALIGNMENT).ijin9. //data[p][4]=rs.getU iComponent()).setModel(new DefaultTableModel(data.getString(4).getString("nama")).getString(3).addItem(resul2. String txt_tanggal2=((JTextField)tanggal. status=koneksi. int n=rs. //data[p][5]=rs.beforeFirst(). String ke_db_absensi2 = "absensi_"+kelas.getString("nama")).getString(1). tbl_absen."root".next()){ data[p][0]=rs. }catch(SQLException x){ 136 .AUTO_RESIZE_ALL_COL UMNS).addItem(resul2. ijin12.getString(2). rs. // data[p][2]=rs.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".getString("nama")).getDateEditor().addItem(resul2. int p=0.

} private void jButton1ActionPerformed(java.WindowEvent evt) { // TODO add your handling code here: lbl_kelas.event..setText(kelas).executeUpdate(tambah_data). status=koneksi.getDateEditor().getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.'"+ ijin1.showMessageDialog(null.mapel.awt. if(tambah==1){ //JOptionPane.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi". koneksi=DriverManager. lbl_semester.'"+ mapel+"'. //String txt_tanggal=((JTextField)tanggal.'Ijin')").getText(). //String ke_db_absensi = "absensi_"+kelas. "Data berhasil ditambah!"). int tambah=status. //DIGANTI nama jComboBoxnya & Status.createStatement().getText().JOptionPane. } } private void formWindowOpened(java. x. tambah_data=("insert into "+ke_db_absensi+"(semester. //loaddata().showMessageDialog(null.getSelectedItem().ActionEvent evt) { // TODO add your handling code here: String ke_db_absensi = "absensi_"+kelas.getSelectedItem()+"'. load_combo_nama().getMessage()).getUi Component()).setText(semester).awt. lbl_mapel. String txt_tanggal=((JTextField)tanggal.getDateEditor().setText(mapel)."").event.nama..'"+ txt_tanggal+"'.tanggal. //ijin1 if (ijin1.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'."root". } else{ 137 .getUi Component()).

tambah_data=("insert into "+ke_db_absensi+"(semester.showMessageDialog(null. "Data gagal ditambah!"). status=koneksi.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.'Ijin')").getMessage()). }catch(SQLException e){ JOptionPane."root".nama. koneksi=DriverManager.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi". } } //ijin2 if (ijin2."").'"+ 138 .JOptionPane.executeUpdate(tambah_data).getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.. e.mapel.'"+ txt_tanggal+"'.showMessageDialog(null.getSelectedItem()+"'.'"+ mapel+"'.getSelectedItem().""). koneksi=DriverManager.createStatement(). e.tanggal.getSelectedItem().nama.tanggal. } }catch(SQLException e){ JOptionPane. tambah_data=("insert into "+ke_db_absensi+"(semester.'"+ mapel+"'.createStatement().mapel."root". int tambah=status.getMessage()).'"+ txt_tanggal+"'..'"+ ijin2.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas. } } //ijin3 if (ijin3. status=koneksi. //DIGANTI nama jComboBoxnya & Status.showMessageDialog(null.

//DIGANTI nama jComboBoxnya & Status.getSelectedItem()+"'.nama.'"+ 139 . e.'"+ mapel+"'.nama.tanggal.'Ijin')"). }catch(SQLException e){ JOptionPane. } } //ijin5 if (ijin5.'"+ ijin4.mapel.getMessage()). koneksi=DriverManager. int tambah=status.executeUpdate(tambah_data). status=koneksi..getSelectedItem()+"'.createStatement()..tanggal. }catch(SQLException e){ JOptionPane. e. koneksi=DriverManager..keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.mapel.'"+ txt_tanggal+"'.getMessage()).'"+ txt_tanggal+"'.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi". tambah_data=("insert into "+ke_db_absensi+"(semester. } } //ijin4 if (ijin4."root".executeUpdate(tambah_data). status=koneksi.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.getSelectedItem()."root". //DIGANTI nama jComboBoxnya & Status. tambah_data=("insert into "+ke_db_absensi+"(semester.ijin3.'Ijin')"). int tambah=status..createStatement().showMessageDialog(null.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas."").showMessageDialog(null.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'."").getSelectedItem().

//DIGANTI nama jComboBoxnya & Status.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas. status=koneksi.executeUpdate(tambah_data).. koneksi=DriverManager.. int tambah=status.tanggal.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi"."")."root". e.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".'"+ mapel+"'.'"+ txt_tanggal+"'. }catch(SQLException e){ JOptionPane.."root". tambah_data=("insert into "+ke_db_absensi+"(semester.getSelectedItem(). status=koneksi. tambah_data=("insert into "+ke_db_absensi+"(semester.executeUpdate(tambah_data).'"+ ijin6. koneksi=DriverManager.'Sakit')").getSelectedItem().tanggal. } } //ijin7 if (ijin7.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.'Sakit')").. }catch(SQLException e){ JOptionPane.showMessageDialog(null. //DIGANTI nama jComboBoxnya & Status. e.mapel.getSelectedItem()+"'. int tambah=status.'"+ ijin5.getMessage()). } } //ijin6 if (ijin6.createStatement().'"+ 140 ."").createStatement().showMessageDialog(null.getSelectedItem()+"'.nama.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.getMessage()).mapel+"'.nama.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.mapel.

'Sakit')")."root".getSelectedItem()+"'.nama. } } //ijin9 if (ijin9."").executeUpdate(tambah_data). //DIGANTI nama jComboBoxnya & Status.getSelectedItem().getMessage()). }catch(SQLException e){ JOptionPane.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".tanggal...getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas. status=koneksi. } } //ijin8 if (ijin8.mapel.createStatement(). tambah_data=("insert into "+ke_db_absensi+"(semester.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas. koneksi=DriverManager.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".'"+ mapel+"'.'"+ txt_tanggal+"'.executeUpdate(tambah_data).keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ 141 . status=koneksi.getSelectedItem().."root". e.'Sakit')").showMessageDialog(null..""). int tambah=status.'"+ mapel+"'. //DIGANTI nama jComboBoxnya & Status.'"+ ijin8.mapel.nama.txt_tanggal+"'.getSelectedItem()+"'.tanggal. int tambah=status.showMessageDialog(null.getMessage()). tambah_data=("insert into "+ke_db_absensi+"(semester.createStatement(). koneksi=DriverManager. e. }catch(SQLException e){ JOptionPane.'"+ ijin7.

.getMessage()).mapel.createStatement().semester+"'. //DIGANTI nama jComboBoxnya & Status.'"+ ijin10."root".'Mangkir')"). koneksi=DriverManager..'Mangkir')"). }catch(SQLException e){ JOptionPane. status=koneksi.'"+ ijin9. }catch(SQLException e){ JOptionPane. //DIGANTI nama jComboBoxnya & Status.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.'"+ mapel+"'.showMessageDialog(null.showMessageDialog(null.getSelectedItem().nama.executeUpdate(tambah_data).getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".tanggal. status=koneksi..getMessage())."").""). e. int tambah=status.createStatement().getSelectedItem()+"'.'"+ txt_tanggal+"'.'"+ txt_tanggal+"'. tambah_data=("insert into "+ke_db_absensi+"(semester. e.getSelectedItem(). int tambah=status."root".'"+ mapel+"'.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas. } } //ijin10 if (ijin10.getSelectedItem()+"'. tambah_data=("insert into 142 .getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi". koneksi=DriverManager.executeUpdate(tambah_data). } } //ijin11 if (ijin11..

'"+ ijin12. //DIGANTI nama jComboBoxnya & Status.executeUpdate(tambah_data).'"+ mapel+"'.getSelectedItem()!= ""){ try{ //String pilihan = "jadwalpelajaran_"+kelas.getMessage()). }catch(SQLException e){ JOptionPane."root".'Mangkir')"). } } //ijin12 if (ijin12. } 143 . e.nama..getSelectedItem().'"+ mapel+"'. int tambah=status. e.getMessage()).showMessageDialog(null.createStatement()..nama.mapel.'"+ ijin11.getConnection("jdbc:mysql://loca lhost:3306/aluswah_absensi".tanggal. //DIGANTI nama jComboBoxnya & Status.'Mangkir')").'"+ txt_tanggal+"'.mapel. } } loaddata(). int tambah=status."+ke_db_absensi+"(semester. koneksi=DriverManager.keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'. status=koneksi.executeUpdate(tambah_data).'"+ txt_tanggal+"'.showMessageDialog(null. }catch(SQLException e){ JOptionPane.""). tambah_data=("insert into "+ke_db_absensi+"(semester.tanggal...keterang an) values('"+ //tambah_data=("insert into "+pilihan+" values('"+ semester+"'.getSelectedItem()+"'.getSelectedItem()+"'.

Selanjutnya pilih semester.12 Memilih nama siswa untuk report 144 . Pertama-tama user harus memilih kelas dan menekan tombol terlebih dahulu untuk menampilkan nama siswa. b. Gambar 11. Pilih nama siswa yang ingin ditampilkan.11 Halaman report a. Form Report Gambar 11.8. c.

JFrame { KoneksiDb x. x = new KoneksiDb(). Source code program tersebut : import import import import java.logging. Apabila kita masih belum memilih nama siswa tersebut maka akan muncul sebagai berikut : Gambar 11. javax. za. Setelah memilih nama siswa maka tekan tompol “Print” untuk mengetahui record ketidakhadiran siswa. public f_report() { initComponents().14 Peringatan untuk memasukkan nama siswa f.koneksi(). Berikut adalah tampilan akhir dari laporan ketidakhadiran siswa pada mata pelajaran. java. x.*. //panggil koneksi 145 . public class f_report extends javax. java.*.util.Level.sql. Gambar 11.Logger.swing.13 Peringatan untuk memasukkan nama siswa e. y. z.d.util.logging.swing.

} comb_kelas. comb_nama.enable(true). txt_repot. za.st = x.enable(true).WindowEvent evt) { // TODO add your handling code here: comb_semester.getMessage()).addItem(""). x. "Pilih salah satu kelas terlebih dahulu.awt.awt.event.ActionEvent evt) { if (comb_kelas.getString("nama")).getSelectedItem()+comb_kelas2. 146 .getSelectedItem() != "" && comb_kelas2. //panggil koneksi za = new KoneksiDb().koneksi().koneksi().showMessageDialog(null.y = new KoneksiDb().event. comb_kelas.enable(false).setEditable(false). String kelas_pilih = ""+comb_kelas.conn.createStatement(). private void load_combo_nama(){ try { ResultSet resul2.enable(true).next()){ comb_nama.enable(false).enable(true).} } private void formWindowOpened(java.koneksi().getSelectedItem() != "") {load_combo_nama(). comb_semester.executeQuery("SELECT nama FROM "+kelas_pilih+" "). public Statement status. } catch(Exception e){JOptionPane.} } private void jButton1ActionPerformed(java. //comb_nama.} else{JOptionPane. z. //panggil koneksi z = new KoneksiDb(). comb_semester."). while (resul2. public ResultSet rs. //panggil koneksi } Connection koneksi.getSelecte dItem().showMessageDialog(null.addItem(resul2. e.st. y. resul2 = x.

comb_nama."+mapel_kelas+" WHERE "+abs_kelas+". resulBInd.mapel='Bahasa Inggris' ")."+mapel_kelas+" WHERE "+abs_kelas+".nama) as hitung.getSelectedItem() == "-Pilih Nama Siswa-") { JOptionPane.getSelectedItem().alokasiwaktu from "+abs_kelas+".nama) as hitung2. resulBInd = y."+mapel_kelas+" WHERE "+abs_kelas+".st.alokasiwaktu from "+abs_kelas+".ActionEvent evt) { // TODO add your handling code here: if (comb_nama.st. resulMTK = x."+mapel_kelas+".st."Pilih Nama Siswa yang Ingin dicetak").mapel='Matematika' ")."+mapel_kelas+".getSelectedItem()+"'&& "+abs_kelas+".conn.getSelectedItem()+"'&& "+abs_kelas+"."+mapel_kelas+".conn.st = x.createStatement(). comb_semester. } private void jButton2ActionPerformed(java.getSelectedItem()+"'&& "+abs_kelas+".enable(false). y.st.ge tSelectedItem().mapel='Bahasa Indonesia' ").nama='"+comb_nama.alokasiwaktu from "+abs_kelas+".getSelectedItem()+comb_kelas2.createStatement().st = z."+mapel_kelas+".showMessageDialog(null. String abs_kelas = "absensi_"+comb_kelas. resulBIng = z.conn. resulSila. }else{ ResultSet resulMTK. txt_repot.executeQuery("SELECT COUNT("+abs_kelas+".executeQuery("SELECT COUNT("+abs_kelas+".event.enable(false).executeQuery("SELECT COUNT("+abs_kelas+".mapel='Pendidikan Pancasila' ").nama='"+comb_nama. resulSila = za. resulBIng.getSelectedItem()+"'&& "+abs_kelas+".st = za. z.enable(false).executeQuery("SELECT COUNT("+abs_kelas+". /* ================== PERCOBAAN =============================== */ String mapel_kelas = "mapel_kelas_"+comb_kelas.nama) as hitung4. try { x.createStatement().conn. 147 .createStatement().nama='"+comb_nama.nama='"+comb_nama.nama) as hitung3."+mapel_kelas+" WHERE "+abs_kelas+".awt.alokasiwaktu from "+abs_kelas+".st = y. za.

txt_repot. txt_repot.getSelectedItem()+"" + "\n___________________________________________________ ________________________________" + "\n\tMata Pelajaran\t\t| Ketidakhadiran / Jumlah jam \t|" + "\n___________________________________________________ ________________________________" + "" + "".getSelectedItem()+"" + "\nKelas\t: "+kelas_pilih+"" + "\nSemester\t: "+comb_semester.getSelectedItem()+comb_kelas2. 148 .setText(Hasil).getString(""+mapel_kelas+".append("\t\t | \t ").append(" \t\t |"). while (resulMTK.next()){ txt_repot. txt_repot. } while (resulBInd. txt_repot.append("\t\t\t | \t ").getString("hitung")). txt_repot. txt_repot.a lokasiwaktu")).append(resulBInd. alokasiwaktu")).append("\n Matematika").append(" / "). txt_repot.append("\n Bahasa Indonesia").append(" \t\t |"). txt_repot. AL-FALAH Desa Sugiharjo.getSelecte dItem().String kelas_pilih = ""+comb_kelas. String Hasil = "ABSENSI KEHADIRAN PER MAPEL" + "\nSMPIT AL USWAH TUBAN" + "\nJL.append(resulBInd.getString(""+mapel_kelas+".next()){ txt_repot.append(" / ").getString("hitung2")). txt_repot.append(resulMTK. Tuban" + "\n___________________________________________________ ________________________________" + "\n" + "\nNama\t: "+comb_nama. txt_repot.append(resulMTK. txt_repot.

} while (resulSila.append("\n Bahasa Indonesia").append(resulBIng.getString(""+mapel_kelas+". txt_repot.append(" / ").append("\t\t | \t "). txt_repot. txt_repot. txt_repot. txt_repot. txt_repot.append(" \t\t |").} while (resulBIng.append(" \t\t |").append("\n Bahasa Indonesia"). txt_repot. txt_repot.append(resulSila.append("\t\t | \t ").append(resulSila.getString("hitung4")). txt_repot.next()){ txt_repot.getString(""+mapel_kelas+".next()){ txt_repot. alokasiwaktu")). alokasiwaktu")). txt_repot.getString("hitung3")). } } catch (SQLException ex) { } } } 149 .append(" / ").append(resulBIng.

dan for. j. behavior dan identitas yang tugasnya dirumuskan dalam suatu lingkup masalah dengan baik. h. Operator pada java terdapat 6 Operator yaitu Operator Aritmatika. c. f. do-while. Perintah addItem adalah untuk menambah item pada komponen swing. d. b. Enkapsulasi (pembungkusan) menujuk pada prinsip dari menyembunyikan desain atau mengimplementasikan informasi yang tidak sesuai pada object yang ada. Perintah getText adalah untuk memberikan nilai pada TextField.1 Kesimpulan a. l. e. m. Java memiliki 2 tipe data yaitu tipe data Primitif dan tipe data Referensi. yaitu dengan memakai if dan switch. Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Pada java dikenal tiga macam bentuk perulangan. Operator Assigment(Penugasan). yaitu : while. Operator Increment-Decrement. Operator Relasi. Class mengizinkan anda dalam mendeklarasikan tipe data baru. Object adalah sebuah entity yang memiliki keadaan. Inheritas adalah merupakan proses pewarisan data dan method dari kelas induk (Super Class) ke kelas anak (Sub Class).BAB XII PENUTUP 12. Polimorfime adalah kemampuan dari sebuah object untuk membolehkan mengambil beberapa bentuk yang berbeda. g. Perintah setText adalah untuk mengambil nilai yang diinputkan pada TextField. 150 . Constructor adalah sebuah tipe khusus dari method yang digunakan untuk membuat dan menginisialisasi sebuah object baru. n. dan bisa di kombinasikan dengan logika perulangan. Percabangan di dalam Java terdapat 2 macam. Operator Logical dan Operator Bitwise. k. i.

Ada pembagian tugas di tiap pendamping praktikum. Jika perlu 4 orang pendamping tiap jam praktikum.2 Saran a. c.12. d. Berikan materi – materi percobaan yang lebih menarik dan menantang. Gunakan waktu semaksimal mungkin antara question dan praktikum. b. Jam praktikum harus ontime. e. 151 .

0. JENI introducing java programing 5. Allaboutalgoritma.com/javase/tutorial/java/nutsandbolts/if.youtube.1.blogspot. with sqlite 14.1199069.352 .scribd.coderanch. http://www..com/doc/78346072/Materi-Pelatihan-Java-Fundamental – kumpulan materi dan percobaan pemrograman 3. http://id.youtube.org/kb/docs/ide/mysql.0.html ..0. http://www.Count MySQL 6.scribd.wikipedia.0l9.0.6.com – kumpulan berbagai materi pemrograman.1198834.0. http://docs..0i5l2.1.htm – Pengenalan ComboBox Dalam NETBEANS 13.3-1..youtube.com/results?search_query=count+query&oq=count+query &gs_l=youtube. http://www.SQLException: After end of result set (JDBC forum at JavaRanch) 12. .org/topic18518.0.netbeans.6872.com/mysqlTutorial/mysqlcount.1ac.0.Displaying record count from SQL query [RowSet(DataProvider)] 8. file:///G:/refrensi/Objek%20Combo%20Box%20Dalam%20JAVA%20Net http://www.com/t/498428/JDBC/databases/java-sql- SQLException-After-end .0.352.0.1j2.Connecting to a MySQL Database . http://www.0. 4.Belajar NETBEANS 11.count query – YouTube 9.com/doc/99690125/Belajar-NETBEANS .0.6.OFzzCoADGpA – Java prog#4 – YouTube 152 ..5.DAFTAR PUSTAKA 1.com/watch?v=fbnvh_Becs4 – Login NETBEANS Beans%20IDE%206.html .368..The if-then and if-then-else Statements (The Java™ Tutorials > Learning the Java Language > Language Basics) 10.0.0..java.php . http://www.9782.sql. 2.6.org/wiki/Java – pengertian tentang pemrograman java.com/results?search_query=Java+prog%234&oq=Java +prog%234&gs_l=youtube..oracle.1ac. http://netbeans. http://forums.0.954.kZ3XKnIjQMM .html .0.3.3j1j1j1.NetBeans IDE Tutorial 7.NetBeans Forums .tizag..3.0.3.3.5113.1196993. http://www.

YouTube 16.com/results?search_query=jcombobox+additem+mys ql&oq=jcombobox+additem+mysql&gs_l=youtube.21.5j3j4j4j0j1j3.0.41178.16080. http://www.1.1..6094.0.3...d7ykeCs3AXM jcombobox additem mysql .0.SQL COUNT() Function 153 .0..1ac. http://www.w3schools.2 2.15.0.41433.youtube..com/sql/sql_func_count.20.0..0.834.asp .

LAMPIRAN 154 .

Sign up to vote on this title
UsefulNot useful