MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang...

62
1 MODUL PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK 1 Java Programming Oleh: Fery Updi,M.Kom TEKNIK INFORMATIKA Ver.1.2017

Transcript of MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang...

Page 1: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

1

MODUL PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK 1

Java Programming

Oleh:

Fery Updi,M.Kom

TEKNIK INFORMATIKA

Ver.1.2017

Page 2: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

2

Object Oriented Programming

POKOK BAHASAN:

Berpikir Object Oriented

Pengertian Objek, Class, Instance, Data, Method, dan Hirarki Class

Pengantar Pemrograman Java TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Memahami definisi objek dan cara mendesain berorientasi objek 2. Memahami definisi dan deklarasi object, class, dan Instance 3. Memahami bahasa pemrograman java

I. Berpikir Object Oriented Definisi OOP OOP (Object Oriented Programming) merupakan teknik membuat suatu program berdasarkan objek dan apa yang bisa dilakukan objek tersebut. OOP terdiri dari objek-objek yang berinteraksi satu sama lain untuk menyelesaikan sebuah tugas. Kode-kode di-breakdown agar lebih mudah di-manage. Breakdown berdasarkan objek-objek yang ada pada program tersebut. Dianjurkan diimplementasikan untuk program dengan berbagai ukuran karena lebih mudah untuk men-debug. Apa sih OOP itu?

Pemrograman Berorientasi Object (OOP) adalah model pemrograman yang paling banyak dipakai saat ini.

OOP telah menggantikan teknik pemrograman prosedural yang telah dipakai sejak tahun 1970-an

Java adalah bahasa yang berorientasi objek, karena itu Anda harus paham OOP agar dapat produktif menggunakan Java.

Program yang Berorientasi Objek akan terdiri dari objek-objek. Objek-objek ini seringkali merepresentasikan apa yang ada di dunia nyata.

II. Pengertian Objek, Class, Instance, Data, Method, dan Hirarki Class Apakah obyek itu? Semua benda yang ada didunia ini dapat kita sebut sebagai obyek. Dosen mata kuliah Teknik Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata kuliah Teknik Informatika adalah juga sebuah obyek. Setiap obyek akan mempunyai karakteristik dan tingkah laku tertentu. 1. Objek, Kelas, dan Instance (Instans)

1

Page 3: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

3

a. Objek adalah kesatuan entitas (benda), baik yang berwujud nyata maupun yang tidak nyata seperti sistem atau konsep yang memiliki sifat karakteristik dan fungsi. Contoh : kue, spidol, mobil, telepon, dan lain-lain

b. Kelas adalah pemodelan dari objek yang berisi informasi (aturan) tentang sifat

karakteristik (data) dan tingkah laku (metode) yang dimiliki oleh objek tersebut. Contoh : resep kue, material spidol, dan lain-lain

c. Instance adalah perwujudan, dimana dalam istilah pemrograman, objek merupakan

instans (perwujudan) dari suatu kelas. Instansiasi adalah : proses perwujudan kelas menjadi objek. Biasanya didalam pemrograman java menggunakan perintah new.

2. Data/Variabel/Property Data adalah sifat karakteristik atau kondisi yang dimiliki oleh suatu objek, istilah data/variabel/property memiliki pengertian yang sama, dan dapat digunakan atau dianalogikan secara bergantian untuk lebih memperjelas suatu konsep. Atau beberapa buku menggunakan istilah lain seperti atribut. 3. Method/Prosedur atau Fungsi/Behaviour Method adalah adalah Prosedur atau fungsi yang dimiliki oleh suatu objek. Karena pada dasarnya merupakan prosedur/fungsi, maka method ini akan mengolah atau mengubah data/variabel yang ada didalamnya sesuai dengan operasi yang telah ditentukan. Dari proses diatas akan terjadi 3 kemungkinan, yaitu :

a. Mengembalikan suatu nilai akhir. b. Mengembalikan nilai yang bersifat sementara untuk kemudian diumpankan ke

method lain. c. Tidak mengembalikan nilai sama sekali.

4. Hierarki Kelas Suatu kelas dapat dibuat sebagai kelas yang benar-benar baru atau dapat dibentuk dari kelas

yang sudah ada. Proses pembentukan kelas baru dari sebuah kelas yang sudah ada disebut

sebagai pewarisan (inheritance). Kelas yang menjadi basis bagi pembentukan kelas lainnya

disebut kelas super. Sedangkan kelas yang terbentuk dinamakan kelas sub.

Proses pewarisan inilah yang akan membentuk hirarki kelas. Kelas yang terletak pada puncak

hirarki disebut sebagai kelas abstrak. Dimana sifat dari kelas abstrak hanya berisi deskripsi

Page 4: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

4

data dan method yang sangat umum. Sehingga tidak mungkin diimplementasikan secara

terperinci. Oleh karena itu kelas abstrak ini tidak dapat langsung di instansiasi menjadi objek.

5. Hubungan antara Class, Object, Data dan Method Dalam konsep OOP, objek diciptakan atau diinstansiasi dari kelas dengan mengisikan nilai parameter data dan memanfaatkan method yang telah dideskripsikan oleh kelas itu. Dengan demikian kelas juga merupakan template/prototype dari suatu objek. Objek-objek yang berasal dari kelas yang sama akan memiliki tipe data yang sama (meskipun dengan nilai yang berbeda) dan fungsi yang sama. Objek dikatakan sebagai instans dari suatu kelas. 6. Kerangka Program OOP

Apa hubungannya dengan OOP?

Sama halnya dengan penyembunyian detil PEDAL pada sebuah MOBIL, di OOP kita menyembunyikan detil pemrograman di dalam sebuah METHOD (FUNGSI)

METHOD-METHOD ini dibuat dan disimpan bersama-sama di dalam suatu desain yang disebut dengan CLASS.

METHOD injak gas, injak rem, belok kiri, belok kanan, dll

NamaFile.java

Komentar Program

Deskripsi Program dan Import

Kelas A

Kelas B

Badan Kelas

Badan Kelas

Deklarasi Data

Main Method

Deklarasi dan Implementasi Method

Deklarasi Data

Deklarasi dan Implementasi Method

Page 5: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

5

CLASS rancangan mobil Class & Object

CLASS adalah suatu template/blueprint/rancangan dari object yang akan dibuat. OBJECT adalah sesuatu yang diciptakan dari Class. Analogi lain :

Class = cetakan kue Object = kue-nya

III. Bagaimana mendesain berorientasi objek? Merancang Aplikasi program Berbasis OOP

Sekarang, Anda diminta merancang suatu program untuk sebuah BANK: Di aplikasi BANK, pasti ada yang namanya REKENING Dengan menggunakan konsep yang sama: Anda dapat mendesain sebuah

CLASS yang merepresentasikan REKENING. REKENING tersebut didesain sedemikian rupa sehingga memiliki 3 METHOD,

yaitu: METHOD untuk menyimpan uang (tabung) METHOD untuk mengambil uang (tarik) METHOD untuk memeriksa saldo (cek)

Analogi Pabrik Mobil dan Program Bank

IV. Konsep Pemrograman Berorientasi OBJEK. Objek adalah kesatuan Entitas yang memiliki sifat dan tingkah laku. Dalam kehidupan sehari, objek adalah benda, baik benda berwujud nyata maupun benda tidak berwujud nyata atau konsep. Contoh benda berwujud nyata : Manusia, mobil, komputer, dll Contoh benda yang tidak nyata atau konsep : Tabungan bank, sistem antrian, sistem internet bangking Objek Oriented Programming (OOP)

Page 6: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

6

Konsep yang membagi program menjadi objek-objek yang saling berinteraksi satu sama lainnya. Keuntungan OOP Alami (Natural), Dapat dikendalikan(Reliable), Dapat digunakan kembali (Reusable), Mudah untuk dipelihara (Maintainable), Dapat diperluas (Extendable) dan Efisiensi waktu. OOP adalah pemrograman yang difokuskan pada penciptaan kelas yang merupakan abstraksi/blueprint/prototype dari suatu objek. Kelas ini harus mengandung sifat (data) dan tingkah laku (method) umum yang dimiliki oleh objek-objek yang kelak akan dibuat (diinstansiasi). Data dan method merupakan anggota (member) dari suatu kelas.

V. PENGENALAN JAVA Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut menggunakan versi yang dinamakan Oak. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk). Saat ini Java berada dibawah lisensi Sun Microsystems. Menurut definisi dari Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat luinak pada komputer standalone ataupun pada lingkungan jaringan. Keunggulan Java Beberapa keunggulan bila dibandingkan dengan bahasa pemrograman lainnya adalah :

1. Java bersifat sederhana dan relatif mudah Semudah c, seampuh c++, mengurangi kompleksitas yang dimiliki c++, sehingga pemrograman cenderung lebih mudah.

2. Java berorientasi pada objek Karena java membagi program menjadi objek-objek, kemudian memodelkan sifat dan tingkah laku masing-masing. Menetukan dan mengatur interaksi antara objek yang satu dengan lainnya.

3. Java bersifat terdistribusi Sudah berkembang ke pemrograman mulai dari client, server, database server, web server, proxy server, dan sebagainya.

4. Java bersifat multiplatform Dapat berjalan di banyak platform sistem operasi.

5. Java bersifat multiThread Dapat mengerjakan beberapa proses dalam waktu yang hampir bersamaan.

Kompiler dan Interpreter Banyak tersedia kompiler dan interpreter dari berbagai vendor diantaranya :

Page 7: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

7

1. J2SDK (Java 2 Software Development Kit) : seperangkat tool yang berisi kompiler dan interpreter java yang direlease oleh Sun dan bersifat free. (download pada situs http://www.sun.com, yang kita gunakan dikelas ini.

2. JBuilder : Development software java yang dibuat oleh Borland Inc. bekerja dilingkungan windows dan memiliki tampilan GUI.

3. Visual J : Produk Microsoft, sebuah compiler sekaligus interpreter, berbasis GUI. Selain ketiga kompiler dan interpreter diatas, masih terdapat beberapa development tool yang dapat digunakan untuk membuat program java, yaitu : Symantec Visual Café, IBM Visual Age for Java, dan Sun Fort for Java. Editor Editor, merupakan sebuah sarana bagi pengembang aplikasi untuk program yang mereka buat, editor yang kita gunakan menuliskan merupakan editor yang berbasis teks. Baik editor yang sudah IDE maupun tidak, diantaranya :

• Edit atau EditPlus • NotePad • WordPad • JCreator • JBuilder • VisualJ • NetBeans • …

Banyak lagi editor yang dapat digunakan untuk pengembangan aplikasi dengan bahasa pemrograman java ini.

VI. INSTALASI PERANGKAT LUNAK PENDUKUNG Java SDK dan NetBeans diperlukan jika hendak membuat program java. Java SDK adalah flatform dasar Java yang diperlukan agar komputer/laptop dapat untuk mengeksekusi kode-kode program bahasa Java. NetBeans adalah aplikasi editor terpadu (IDE) yang akan banyak mempermudah dalam membuat aplikasi karena menyediakan kontrol-kontrol visual. Hardware Requirement

• Komputer/Laptop minimal RAM 1 GB • Prosesor clock-speed diatas 1 GHZ • Sistem Operasi bebas Windows 32, 64 Bit, atau Linux • Download SDK dan IDE dapat di download secara gratis di www.oracle.com atau

www.java.sun.com Yang harus di install pertama kali adalah:

1. Instalasi Java SDK jdk-8u11-windows-i586.exe

jdk-8u11-windows-x64.exe

Page 8: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

8

2. Instalasi NetBeans Netbeans-8.0-windows

Page 9: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

9

Penerapan OOP di Pemrograman JAVA POKOK BAHASAN:

Fase pemrograman OOP Java

Objek dari Sebuah Kelas

Data dan Method dari Suatu Kelas TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Memahami Fase pemrograman OOP Java 2. Membuat objek dari sebuah kelas 3. Membuat Data dan Method dari suatu kelas

1. Fase Pemrograman JAVA

Contoh Program pertama dengan JAVA

Hasilnya adalah:

2

Page 10: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

10

2. Penamaan Class, Method, Variabel, dan Konstanta Aturan Penamaan :

1. Case-sensitive, 2. Tidak menggunakan reserved word atau Keyword JAVA, 3. Tidak menggunakan simbol-simbol operator. 4. Dimulai dengan huruf abjad (a, b, c, ….), atau underscore (_), tanda dolar ( $ ), 5. Tidak dibolehkan diawali dengan bilangan (0, 1, 2, …).

3. Membuat Objek dari Sebuah Kelas Untuk membuat sebuah objek dibutuhkan Operator new. Adapun bentuk umumnya sebagai berikut :

Contoh :

4. Mengakses Data dan Method dari Suatu Kelas Untuk mengakses data dan method pada sebuah objek dapat dilakukan dengan cara sebagai berikut :

Yang perlu diperhatikan dalam mengakses data dan method adalah bagaimana mengatur tingkat aksesibilitas (accesibility level) kedua unsur tersebut terhadap kelas yang mengakses, apakah bersifat default, public, private, atau protected. Contoh:

5. Menampilkan Hasil di Layar Monitor Untuk menampilkan hasil ke layar monitor dapat dilakukan dengan beberapa perintah, diantaranya :

a. Dilingkungan Console menggunakan method print() atau println() dalam kelas System dalam struktur package java.lang. package ini merupakan default package bagi semua aplikasi java, sehingga tidak perlu di import kedalam program.

b. Menggunakan komponen GUI

menggunakan kelas JOptionPane yang merupakan komponen dari package javax.swing. Baik sebagai output maupun sebagai input (showMesageDialog() atau showInputDialog()).

namaKelas namaObjek = new namaKelas();

Mahasiswa objMahasiswa = new Mahasiswa();

namaObjek.namaVariabel; namaObjek.namaMethod();

objMahasiswa.NIM; objMahasiswa.bayarKuliah();

Page 11: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

11

6. Membaca Data Input Dari Keyboard Proses pembacaan data input yang diketikkan oleh user melalui keyboard dilihat dengan dua cara, yaitu :

a. Dalam lingkungan Console (DOS) menggunakan kelas BufferedReader(), InputStreamReader(), dimana kelas diinstansiasikan menjadi sebuah objek. Dan kemudian objek yang terbentuk memiliki sebuah metode readLine() yang digunakan untuk menangkap inputan dari keyboard. Contoh program

Page 12: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

12

b. Dalam lingkungan GUI menggunakan kelas/komponen JOptionPane dengan method showInputDialog(). Contoh program

Page 13: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

13

c. Keyword dalam Java

Page 14: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

14

Tipe Data, Variabel dan Operator POKOK BAHASAN:

Tipe Data

Variabel

Operator TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami Tipe Data 2. Dapat memahami Variabel 3. Dapat memahami Operator

1. Tipe Data Java memiliki dua jenis tipe data yang dikategorikan menjadi dua yaitu tipe data primitif dan tipe data referensi/reference.

a. Primitif Jenis-jenisnya sebagai berikut:

b. Referensi/Reference Kelebihan pemrograman dengan orientasi objek adalah dapat mendefinisikan tipe data baru yang merupakan objek dari class tertentu. Tipe data ini digunakan untuk mereferensikan objek atau class tertentu, seperti String.

2. Variabel Variabel merupakan sebuah tempat dimemori yang dialokasikan untuk menampung data yang memiliki sifat sementara, yang digunakan hanya pada saat program masih berjalan dan dihilangkan/dihapus dari memori setelah program berakhir. Format Deklarasi :

TipeData namaVariabel [= inisialisasiNilaiAwal];

3

Page 15: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

15

Contoh : int nilaiAbsen; int nilaiTugas, nilaiUTS, nilaiUAS; String namaDepan = “Tariq” String namaTengah=“Athar”, namaBelakang=“Kisan”; char nilaiHuruf=‘A’;

Latihan 1:

Latihan 2:

Latihan 3:

Hasilnya adalah:

Page 16: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

16

Latihan 4

Hasilnya adalah:

Page 17: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

17

3. Operator Operator adalah simbol khusus yang menyajikan operasi khusus pada satu, dua, atau tiga operand dan kemudian mengembalikan hasilnya Jenis operator antara lain :

1. Operator Aritmatika Memiliki beberapa jenis simbol yaitu : *, /, %, +, -

Hasilnya adalah:

Page 18: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

18

2. Operator Increment dan Decrement Memiliki beberapa jenis simbol yaitu : ++, --

Page 19: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

19

3. Operator Relasi

Memiliki beberapa jenis simbol yaitu : <, <=, >, >=, ==, !=

Page 20: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

20

4. Operator Logika

Memiliki beberapa jenis simbol yaitu : &, &&, |, ||, ^, !

Page 21: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

21

5. Operator Kondisi(?:) atau Ternary

Memiliki bentuk sbb : exp1?exp2:exp3

Page 22: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

22

Page 23: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

23

Struktur Pemilihan POKOK BAHASAN:

Pemilihan bentuk kondisi if

Bentuk switch…case TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami pemilihan bentuk if 2. Dapat memahami pemilihan bentuk switch…case

1. Pemilihan kondisi if Struktur if menentukan sebuah statement (atau blok statement) yang akan dieksekusi jika dan hanya jika persyaratan boolean (boolean statement) bernilai true. Bentuk if dengan 1 baris statement, Contoh struktur pemilihan 1

4

If (boolean_expression) Statement;

Page 24: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

24

Hasilnya adalah:

Bentuk if lebih dari 1 baris statement,

If (boolean_expression){ Statement1; Statement2;

}

Page 25: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

25

2. Bentuk if - else Struktur if-else digunakan apabila kita ingin mengeksekusi sebuah statement dengan kondisi true dan statement yang lain dengan kondisi false. Bentuk dari if-else, Untuk lebih dari 1 baris Contoh struktur pemilihan 3

If (boolean_expression) Statement1;

Else Statement2;

If (boolean_expression) Statement1; …………………;

} else{ Statement2; …………………; }

Page 26: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

26

Contoh struktur pemilihan 4

Page 27: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

27

3. Bentuk if atau if …. Else Bersarang Statement pada bagian else dari blok if-else dapat menjadi struktur if else yang lain. Struktur seperti ini mengijinkan kita untuk membuat seleksi persyaratan yang lebih kompleks. Bentuk if-else if, Contoh struktur pemilihan 5

If (boolean_expression1) Statement1;

Else if(boolean_expression2) Statement2; else Statement3; }

Page 28: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

28

Contoh struktur pemilihan 6

Page 29: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

29

4. Bentuk switch … case Cara lain untuk membuat percabangan adalah dengan menggunakan kata kunci switch. Dengan menggunakan switch kita bisa melakukan percabangan dengan persyaratan yang beragam. Bentuk switch,

Switch (switch_expression){ Case case_selection1: Statement1; //block 1 Break; Case case_selection2: Statement1; //block 2 Break; Default: Statement1; //block n Break; }

Page 30: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

30

Struktur Pengulangan POKOK BAHASAN:

Pengulangan for

Pengulangan while

Pengulangan do while

Perintah break dan continue TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami pengulangan for 2. Dapat memahami pengulangan while 3. Dapat memahami pengulangan do while 4. Dapat memahami perintah break dan continue

1. Pengulangan for Seperti pada struktur pengulangan sebelumnya yaitu melakukan pengulangan eksekusi code beberapa kali. Bentuk dari for loop Keterangan:

1. InitExpression – inisialisasi dari variabel loop. 2. LoopCondition - membandingkan variabel loop pada nilai batas. 3. StepExpression - melakukan update pada variabel loop.

Contoh struktur pengulangan1 For

5

For (InitExpression; LoopCondition;StepExpression){ Statement1; Statement2; …

}

Page 31: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

31

Page 32: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

32

2. Pengulangan while Statement while loop adalah statement atau blok statement yang diulang-ulang sampai mencapai kondisi yang cocok. Bentuk dari while, Contoh struktur pengulangan2 While

While(boolean_expression) { Statement1; Statement2; … }

Page 33: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

33

3. Pengulangan do … while Do-while loop mirip dengan while-loop. Statement di dalam do-while loop akan dieksekusi beberapa kali selama kondisi bernilai true. Perbedaan antara while dan do-while loop adalah dimana statement di dalam do-while loop dieksekusi sedikitnya satu kali. Bentuk dari do-while, Contoh struktur pengulangan3 do…While

do { Statement1; Statement2; … }while(boolean_expression);

Page 34: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

34

4. Perintah break dan continue break adalah perintah yang digunakan untuk menghentikan kegiatan pengulangan break label dengan menambahkan label pada awal for terluar dapat menjadikan perintah break … label menghentikan semua pengulangan. Continue adalah perintah yang digunakan untuk melewati kegiatan yang ada dibawah perintah tersebut dan melanjutkan pengulangan Contoh struktur pengulangan4 break dan continue

Page 35: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

35

Page 36: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

36

String, String Buffer dan Character POKOK BAHASAN:

Penerapan String

Penerapan String Buffer

Penerapan Character TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami penerapan String 2. Dapat memahami penerapan String Buffer 3. Dapat memahami penerapan Character

1. Kelas String Model ini mengadopsi konsep Array-of-char dari bahasa C/C++. Dimana Array-of-char : memandang data string sebagai sederetan karakter yang membentuk array, jumlah element array sudah pasti dan tidak mungkin berubah. Sebuah kelas yang digunakan untuk mengoperasikan data String, deklarasi kelas ini sebagai berikut : 2. Operasi-operasi pada Kelas String Berikut beberapa metode yang disediakan oleh class String untuk memanipulasi data string (metode lengkap dapat dilihat di Java.sun.com) :

1. Panjang data string : namaObjek.length(); 2. Penggabungan data string : namaObjek.concat(String); 3. Pembandingan data string : namaObjek.equal (String); 4. Pengantian data string : namaObjek.replace(char, char);

namaObjek.replaceAll(String, String); namaObjek.replaceFirst(String, String);

5. Kapitalisasi data string : namaObjek.toLowerCase(); namaObjek.toUpperCase();

6. Sub-string : namaObjek.substring(int); namaObjek.substring(int, int);

7. Operasi charakter : namaObjek.charAt(int);

6

1. Inisialisasi 1 : String abc = new String(“Contoh inisialisasi 1”);

2. Inisialisasi 2 : String abc; abc = new String(“Contoh inisialisasi 2”);

3. Inisialisasi 3 : String abc; abc = “Contoh inisialisasi 3”;

Page 37: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

37

namaObjek.toCharArray(); 8. Konversi : String.valueOf(variabel):

namaObjek.toString(): Contoh

3. Kelas StringBuffer Model kedua ini mengadopsi konsep pointer-of-char dari bahasa C/C++. Dimana tipe data pointer adalah implementasi dari dynamic-allocation yang mengijinkan penggunaan variabel dalam jumlah besar jika diperlukan dan penghapusan variabel tersebut jika sudah tidak diperlukan lagi pada saat run-time. Fleksibelitas ini yang menyebabkan suatu data string bisa mengalami perubahan ukuran: bertambah atau berkurang. Berbeda dengan class string, bahwa data StringBuffer hanya bisa diinisialisasi melalui construktornya yaitu dengan menggunakan perintah new. Sbb: Contoh: StringBuffer

StringBuffer namaObjek = new StringBuffer(string);

Page 38: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

38

4. Operasi-Operasi pada Kelas StringBuffer Berikut beberapa metode yang disediakan oleh class StringBuffer untuk memanipulasi data stringBuffer, dimana tidak berbeda jauh dengan Class String.

1. Panjang data StringBuffer : namaObjek.length(); namaObjek.setLength(int);

2. Penambahan data StringBuffer : namaObjek.append(String); namaObjek.insert(int, String);

3. Penghapusan data StringBuffer : namaObjek.delete(int, int); 4. Penggantian data StringBuffer : namaObjek.replace(int, int, String); 5. Pembandingan data StringBuffer : namaObjek.equal (String); 6. Pembalikan data StringBuffer : namaObjek.reverse(); 7. Sub-string : namaObjek.substring(int);

namaObjek.substring(int,int); namaObjek.indexOf(String).

8. Operasi karakter : namaObjek.charAt(int); namaObjek.deleteCharAt(int); namaObjek.setCharAt(int, char);

9. Konversi : namaObjek.toString():

Page 39: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

39

5. Kelas Character Kelas Character dibuat untuk meningkatkan kemampuan programmer dalam menangani tipe data karakter. Berbagai metode disiapkan untuk memanipulasi data karakter. Mulai dari memeriksa jenis karakter sampai dengan melakukan konversi tipe data karakter menjadi data lain. Kelas Character menyediakan satu constructor untuk menginisialisasi data karakter, yaitu : constructor dengan parameter data bertipe karakter. Deklarasi Kelas Character sbb : 6. Kelas Character Beberapa metode akan dibahas terutama untuk memeriksa jenis karakter saat ini, diantaranya sbb:

1. Berjenis Bilangan ? : Character.isDigit(char)); 2. Berjenis Huruf ? : Character.isLetter(char)); 3. Berjenis Huruf/Bilangan ? : Character.isLetterOrDigit(char)); 4. Berjenis Spasi ? : Character.isWhiteSpace(char)); 5. Berjenis Huruf Kecil ? : Character.isLowerLetter(char)); 6. Berjenis Huruf Besar ? : Character.isUpperLetter(char)); 7. Konversi ke Huruf Kecil ? : Character.toLowerCase(char)); 8. Konversi ke Huruf Besar ? : Character.toUpperCase(char)); 9. Konversi ke String ? : Character.toString(char));

namaObjek.toString());

Character namaObjek = new Character(char);

Page 40: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

40

Array dan Method POKOK BAHASAN:

Pengertian Array/Larik

Pengertian Sub program TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami tentang pengertian array serta dapat membuat program dengan menggunakan array

2. Dapat memahami tentang pengertian sub program dan dapat membuat sub program sederhana

Dasar Teori 1. Array/Larik Larik adalah sebuah struktur data yang terdiri dari data yang bertipe sama. Ukuran larik bersifat tetap, larik akan mempunyai ukuran yang sama pada saat sekali dibuat. Larik dalam Java adalah obyek, disebut juga sebagai tipe referensi. Sedangkan elemen dalam larik Java bisa primitif atau referensi. Posisi dari larik biasa disebut sebagai elemen. Elemen larik dimulai dari 0 (nol). Penyebutan larik diberikan dengan cara menyebutkan nama lariknya dan diikuti dengan indeksnya, dimana indeks dituliskan diantara tanda kurung siku. Tabel 1. memperlihatkan gambaran larik dengan 10 elemen, dimana setiap elemennya bertipe integer, dengan nama A.

Tabel 1 Contoh Array

Nama A[0] AP[1] AP[2] AP[3] AP[4] AP[5] AP[6] AP[7] AP[8] AP[9]

Isi Larik 12 -56 23 45 -16 -2 85 41 15 20

a. Deklarasi dan Menciptakan Array / Larik

Sebagai sebuah obyek, larik harus diciptakan dengan menggunakan kata cadang new. Deklarasi dan penciptaan variabel larik gambar 1 adalah sebagai berikut.

int A[] = new int[10];

larik dideklarasikan dan langsung diciptakan . Atau

int A[];

A = new int[10];

larik dideklarasikan, baru pada pernyataan berikutnya larik diciptakan.

7

Page 41: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

41

Contoh :

Hasil Output:

b. Array Multi Dimensi (N-Dimensi) Kita juga bisa membuat variabel larik yang tipe elemennya adalah larik. Dengan cara demikian, kita membuat larik dua dimensi. Dengan larik dua dimensi, maka kita mempunyai elemen yang berindeks tidak hanya satu, tetapi dua. Kita bisa membayangkan larik dua dimensi tersebut seperti sebuah tabel yang berisi baris dan kolom. Penyebutan sel tabel selalu diikuti dengan penyebutan baris berapa dan kolom berapa. Contoh : Diberikan data kelulusan mahasiswa sebuah perguruan tinggi sebagai berikut.

Tabel.2 Contoh Array Multi Dimensi Jurusan 2015 2016 2017

Teknik Informatika 110 125 135

Sistem Informasi 56 75 80

Page 42: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

42

Int data_lulus [2] [3]

[0] [0]

[0] [1] [0] [2]

[1] [0]

[1] [1] [1] [2]

Contoh:

Hasil Output:

2. Method

a. Method Tanpa Varibel Method (atau dalam beberapa bahasa pemrograman sering disebut fungsi atau prosedur) adalah sub program yang membiarkan seorang programer untuk membagi program dengan membagi masalah ke dalam beberapa sub masalah yang bisa diselesaikan secara modular. Dengan cara demikian, maka pembuatan program bisa lebih dimanajemen. Kelas (class) adalah program java yang akan dieksekusi. Method ada di dalam kelas. Java mempunyai kumpulan kelas yang sudah dimiliki yang tersimpan di dalam paket-

TI 0

SI 1

0 1 2

2015 2016 2017

Page 43: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

43

paket. Kumpulan kelas tersebut ada di dalam Java Application Interface (Java API) atau Java class libraries dan beberapa libraries lainnya. Format Method Secara Umum: tipe_return-value

nama_method(parameter1,parameter2,…,parameterN)

{

deklarasi dan pernyataan;

}

Elemen yang diperlukan dari deklarasi method adalah tipe kembalian method, nama, kurung buka dan tutup ( ) dan isi method yang diawali dan diakhiri dengan kurung kurawal buka dan tutup { }. Secara umum, deklarasi method mempunyai 6 komponen, yaitu: 1. Modifier - seperti public, private. 2. Tipe kembalian (return type)—tipe data dari nilai yang dikembalikan oleh method,

atau void jika method tidak mempunyai nilai kembalian. 3. Nama method—aturan untuk penamaan field diterapkan untuk nama method

tetapi kesepakatannya adalah sedikit berbeda. 4. Daftar parameter – pemisah antar parameter input adalah koma, diawali oleh tipe

datanya, yang diletakkan diantara tanda kurung ( …daftar parameter…. ). Jika tidak ada parameter, harus menggunakan kurung buka tutup saja ( ).

5. Daftar exception—tidak akan masuk dalam pembahasan di sini 6. Isi method, diletakkan di antara kurung kurawal buka dan tutup { } — kode-kode

method, termasuk deklarasi variabel lokal ada di sini.

Contoh:

Hasil Output:

Page 44: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

44

b. Method dengan Varibel Method (atau dalam beberapa bahasa pemrograman sering disebut fungsi atau prosedur) adalah sub program yang membiarkan seorang programer untuk membagi program dengan membagi masalah ke dalam beberapa sub masalah yang bisa diselesaikan secara modular. Dengan cara demikian, maka pembuatan program bisa lebih dimanajemen. Contoh:

Hasil Output:

Parameter pada baris kedua disebut sebagai parameter formal, dan pada baris ke 18 disebut parameter aktual. Ada 2 buah parameter yaitu:

Parameter formal adalah parameter yang tertulis dalam definisi method

Parameter aktual parameter yang berada pada inputan langsung pada saat penggunaan method tersebut.

Parameter bisa lebih dari satu dengan dipisahkan tanda koma,. Yang perlu diperhatikan pada saat pemanggilan method adalah jumlah, urutan dan tipe parameter aktual harus sesuai dengan jumlah urutan dan tipe parameter formal. Pemberian Variabel Dalam Method Ada dua tipe data variable passing pada method, yaitu pass-by-value dan pass-by-reference.

Pass-by-value Ketika pass-by-value terjadi, method membuat sebuah salinan dari nilai variable yang dikirimkan ke method. Walaupun demikian method tidak dapat secara langsung memodifikasi nilai variable pengirimnya meskipun parameter salinannya sudah dimodifikasi nilainya di dalam method.

Pass-by-reference

Page 45: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

45

Ketika sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variable dilewatkan pada saat pemanggilan method. Ini tidak seperti pada pass-by-value, method dapat memodifikasi variable asli dengan menggunakan alamat memori tersebut, meskipun berbeda nama variable yang digunakan dalam method dengan variable aslinya, kedua variable ini menunjukkan lokasi dari data yang sama.

Latihan 1 (Point 30) : Diberikan data Perolehan Medali Emas PON (Pekan Olahraga Nasional) sebagai berikut.

Tabel.2 Perolehan Medali Emas PON

Asal Provinsi 2015 2016 2017

DKI Jakarta 15 17 13

Jawa Barat 13 15 15

Jawa Tengah 10 9 12 Buatlah Array/Larik yang sesuai dengan data tersebut diatas: Latihan 2 (Point 30) Buatlah program dengan menggunakan Function atau Fungsi untuk memproses perhitungan sebagai berikut:

Fungsi Hitung penjumlahan ( 5 + 4 = 9), hasil nilai penjumlahan angka 9 akan muncul pada proses pencetakan.

Page 46: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

46

Pewarisan (inheritance) POKOK BAHASAN:

Pengertian inner class

Penerapan pewarisan (inheritance) TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami tentang OOP terutama tentang inner class 2. Dapat memahami tentang penerapan pewarisan (inheritrance)

Dasar Teori 1. Pewarisan (inheritance) Pewarisan merupakan proses penciptaan kelas baru dengan mewarisi karakteristik kelas yang sudah ada (biasa disebut kelas induk), ditambah dengan karakteristik unik kelas baru tersebut (biasa disebut turunan). Dalam java, kelas induk ini dinamakan superclass dan kelas turunan dinamakan subclass.

Gambar 8.1 Contoh pewarisan pada kelas hewan Hewan adalah superclass dari karnivora dan herbivora. Kelas turunan karnivora dan herbivora ini memiliki data dan method yang dimiliki kelas hewan. Dalam java, format penulisan untuk membuat subclass adalah:

class namasuperclass {

// body kelas

}

class namasubclass extends namasuperclass{

// body kelas

}

8

Method

Data

Class Hewan

Ukuran, sifat, anatomi

Caramakan() Carabersuara() Caragerak()

Karnivora

Jenismakanan

Caramakan()

Herbivora

Jenismakanan

Caramakan()

Kelas induk

Kelas Turunan

Page 47: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

47

2. Manfaat Pewarisan (Inheritance) 1. Bersifat reusable

Pada class yang dimiliki sifat mirip dengan class lain, tidak perlu membuat variable dan method yang sama dalam penerapannya, sehingga hanya perlu membuat satu induk class dan beberapa sebagai class anak sebagai yang mewarisi method dan data dari class induk. ketika membutuhkan data dan method tambahan pada class anak hanya perlu menambahkan data tambahan tersebut, tanpa perlu mendeklarasi data dan method yang sudah dimiliki oleh induk class.

2. efisien dalam menegemen data dan method

Ketika membutuhkan perubahan pada data dan method pada induk class, tidak perlu mengubah semua class anak, sehingga hanya perlu melakukan perubahan pada class induknya saja.

Contoh 1- Program: Jadi, kita mempunyai 3 kelas disini, yaitu :

1. Main Class 2. Kelas Bapak (Super Class) 3. Kelas Anak (Sub Class)

Langkah-langkahnya adalah: 1. Buatlah Class baru beri nama BelajarInheritance (Main Class), seperti kode program

dibawah ini:

2. Setelah itu buat class baru dengan nama Bapak

Untuk menginduk pada suatu class, kita menggunakan kata kunci extend. Untuk mengilustrasikan ini, kita akan membuat contoh class induk. Dimisalkan kita mempunyai class induk yang dinamakan Bapak. Perhatikan bahwa atribut name dan address dideklarasikan sebagai protected. Alasannya kita melakukan ini yaitu, kita inginkan atribut-atribut ini untuk bisa diakses oleh subclass (anak) dari superclass Bapak). Jika kita mendeklarasikannya sebagai private, subclass tidak dapat menggunakannya. Catatan bahwa semua properti dari superclass yang dideklarasikan sebagai public, protected dan default dapat diakses oleh subclass-nya.

Page 48: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

48

Sekarang, kita ingin membuat class lain bernama Anak meng-extend class Bapak, sehingga kita dapat mewariskan semua properti dan method dari yang ada pada class Bapak.

3. Setelah itu buat class baru dengan nama Anak

4. Setelah itu, kita instansiasi objek pada main class (BelajarInheritance), caranya seperti

berikut:

5. Setelah itu jalankan program dengan klik ikon run atau tekan F6. Maka akan tampil hasil

seperti dibawah ini :

Contoh 2- Program:

Page 49: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

49

Kemudian kita buat kelas Balok yang merupakan turunan dari kelas PersegiPanjang

Sedangkan untuk program utamanya:

Page 50: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

50

Sehingga hasil keluaran programnya adalah:

Tugas (Point 30) : 1. Buatlah program untuk mencari Luas Segitiga dengan menggunakan konsep pewarisan

(inheritance) Catatan: Tugas dikirim ke email: [email protected], dengan Subject/Topik: Tugas Pewarisan nama_mhs kelas, kirim tugas dalam bentuk screenshot kode program dan hasil paling lambat Tgl.22 Mei 2017 Jam 00.00

Page 51: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

51

Enkapsulasi (Encapsulation) POKOK BAHASAN:

Pengertian Enkapsulasi

Penerapan Enkapsulasi (Encapsulation) TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami tentang OOP terutama tentang Enkapsulasi 2. Dapat memahami tentang penerapan Enkapsulasi (Encapsulation)

Dasar Teori Enkapsulasi merupakan proses pembungkusan (encapsulation) dari suatu kelas atau biasa. Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni:

Information hiding Menyembunyikan informasi dari suatu class agar tidak bisa diakses dari luar class, caranya hanya dengan memberikan modifier private pada varibel yang ingin kita hiding.

Interface to access data. Cara kita untuk mengubah nilai pada suatu variabel yang telah dilakukan information hiding. Cara yang biasa dilakukan adalah melalui method, lewat method ini kita bisa merubah nilai suatu variabel yang telah mengalami information hiding Terdapat tiga tingkat akses yang terkait dengan enkapsulasi, yaitu: 1. Private

Ketika mendeklarasikan data dan method dengan private, maka data dan method tersebut hanya dapat diakses oleh kelas yang memilikinya saja.

2. Protected Ketika mendeklarasikan data dan method dengan protected, maka data dan method tersebut dapat diakses oleh kelas yang memilikinya dan kelas-kelas yang masih memiliki hubungan turunan.

3. Public Data dan method yang bersifat public akan dapat diakses oleh semua bagian dalam program. Semua bagian dalam program adalah semua kelas yang memiliki hubungan turunan maupun yang tidak memiliki hubungan sama sekali.

Tabel 1 Perbedaan Tingkat Akses Enkapsulasi

Private Protected Public Akses dalam satu kelas Bisa Bisa Bisa

Akses dalam kelas turunan Tidak Bisa Bisa

Akses dalam kelas bukan turunan Tidak Tidak bisa

9

Page 52: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

52

Contoh Program-1

Buatlah class dengan nama mahasiswa, ketik kode program dibawah ini:

Buatlah main class dengan nama EnkapsulasiDemo, ketik kode program dibawah ini:

Maka output-nya seperti berikut:

Page 53: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

53

Contoh Program-2

Buatlah class dengan nama Penggajian, ketik kode program dibawah ini:

Buatlah main class dengan nama EnkapsulasiGajian, ketik kode program dibawah ini:

Page 54: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

54

Maka output-nya seperti berikut:

Page 55: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

55

Inner Class, Polymorfisme POKOK BAHASAN:

Pengertian dan penerapan Inner Class

Pengertian dan penerapan Polymorfisme TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami tentang OOP terutama tentang Inner Class dan Polymorfisme 2. Dapat memahami tentang penerapan Inner Class dan Polymorfisme

1. Dasar Teori Inner Class Yaitu kelas yang dibuat di dalam kelas. Inner class ini dapat mengakses data dan method dari kelas yang berada di bagian luarnya, meskipun data bersifat private. Dan bagian private dari inner class tetap tidak dapat di akses oleh kelas di bagian luarnya. Ada 4 jenis inner class, yaitu : 1. “Regular” Inner class (adalah inner class yang bukan static/method local) 2. Method-local inner class (adalah inner class yang dideklarasikan di dalam method) 3. Anonymous inner class (adalah inner class yang dideklarasikan tanpa nama kelas) 4. Static nested classes (adalah inner class dengan modifier static) Contoh Program:

Sedangkan program utamanya:

10

Page 56: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

56

Maka output-nya seperti berikut

2. Dasar Teori Polymorfisme Polimorfisme merupakan kemampuan suatu obyek untuk mengungkap banyak hal melalui satu cara yang sama. Secara mudah polymorphism bisa disamakan dengan method overloading, dimana didalam class bisa terdapat beberapa method dengan nama sama. Misalnya kelas B, C, dan D adalah turunan kelas dari kelas A, maka kita dapat menjalankan method-method dari kelas B, C, dan D hanya dari obyek yang diinstansiasi dengan kelas A. Polimorfisme juga dapat diartikan sebagai suatu konsep pada bahasa pemrograman yang mengizinkan kelas induk untuk mendefinisikan sebuah method general untuk semua kelas turunannya dan selanjutnya kelas turunannya dapat memperbarui implementasi dari method tersebut secara lebih spesifik sesuai dengan karakteristiknya masing-masing. Contoh: Sebuah method bernama tulisData() yang berfungsi untuk menampilkan data string, tentu tidak bisa menangani masukan berupa data yang lain. Solusi yang dapat diberikan yaitu dengan menyediakan beberapa method dengan nama yang sama dan masing-masing method memiliki parameter dengan tipe data yang berbeda. Method tersebut akan bereaksi dengan satu dari beberapa macam cara tergantung dari data yung di-passing ke dalamnya, keragaman model aksi inilah yang disebut Polymorphism, atau banyak bentuk Contoh 1 Definis class TampilData

Page 57: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

57

Definisi class Utama

Maka output-nya seperti berikut:

Contoh 2

Membuat Kelas Hewan

Membuat kelas turunan Kuda yang merupakan turunan dari class Hewan

Page 58: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

58

Membuat kelas turunan Kucing yang merupakan turunan dari class Hewan

Membuat kelas turunan Ayam yang merupakan turunan dari class Hewan

Membuat class suara hewan untuk mengetes class-class yang telah dibuat:

Maka output-nya seperti berikut:

Page 59: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

59

Java Swing POKOK BAHASAN:

Pengertian Java Swing

Penerapan Komponen-komponen Java Swing pada IDE TUJUAN BELAJAR: Setelah mempelajari bab ini, diharapkan mampu:

1. Dapat memahami pengertian Java Swing 2. Dapat memahami tentang penerapan komponen-komponen Java Swing pada IDE

Dasar Teori 1. Pengertian Java Swing Java Swing adalah librari java yang digunkan untuk menciptakan Grafik User Interface (GUI). Dengan Java Swing kita dapat membuat user interface yang cross platform atau OS independent. Artinya user interface yang kita buat dapat dijalankan pada system operasi apa saja (OS yang suport Java) dengan tampilan yang relative sama. Bahkan kita dapat membuat user interface yang menyerupai Windows XP, Mac OS atau Linux tanpa tergantung dari OS yang kita gunakan. SWING, adalah salah satu bagian dari Java Foundation Classes (JFC). Pada JFC ini juga terdapat fasilitas untuk menambahkan Rich Graphic Functionality. 2. Komponen Swing Package dari Swing menyediakan banyak kelas untuk membuat aplikasi GUI. Package tersebut dapat ditemukan di javax.swing. Komponen Swing ditulis menyeluruh menggunakan Java. Kesimpulannya, program GUI ditulis menggunakan banyak kelas dari package Swing yang mempunyai tampilan look and feel yang sama meski dijalankan pada beda paltform. Lebih dari itu, Swing menyediakan komponen yang lebih menarik seperti color chooser dan option pane. Nama dari komponen GUI milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas terdapat pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan nama komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai contoh, satu komponen dalam AWT adalah button class. Sedangkan pada Swing, nama komponen tersebut menjadi Jbutton class.

Dalam ranah antar muka pengguna, komponen merupakan bagian fundamental di Java. Pada prinsipnya, segala sesuatu yang kita lihat di tampilan aplikasi Java adalah suatu komponen, misalnya window, menu, dan button. Di sisi lain, container adalah jenis komponen yang “menampung” dan mengelola komponen-komponen lainnya. Idealnya, suatu komponen harus diletakkan di sebuah container agar ia dapat digunakan.

10

Page 60: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

60

Komponen tersebut diantaranya : a. Label, TextField, Text Area dan Button

menggunakan Label, TextField dan Button dalam NetBeans Buatlah Form baru dengan cara klik kanan defaulft package > New > Jframe Form

Rancang form seperti dibawah ini:

Swing Control terdiri dari : Label, TextFields, Button, dan TextArea Variabel Name: tNIM, tNama, tAlamat, bProses, bClear, bKeluar, dan taTampil Memberikan nama variabel name dengan cara klik kanan pada salah satu Swing Control lalu > Change Variabel Name

Page 61: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

61

Setelah memberikan nama Variabel Name di setiap Swing Control langkah selanjutnya adalah mengisi kode program pada Form tersebut dengan cara Klik Kanan pada Button Keluar > Events > Action > actionPerformed. Lakukan hal yang sama untuk bProses dan bClear

b. Radio Button dan Combo Box Dari rancangan form diatas kita dapat menambahkan Swing Control Radio Button dan Combo Box untuk digunakan memasukan data jenis kelamin dan jurusan.

Variabel Name: rbLaki, rbPerempuan, dan cbJurusan

Page 62: MODUL PRAKTIKUM PEMROGRAMAN BERBASIS … · Informatika kalian adalah suatu obyek. Modul yang kalian pegang ini juga suatu obyek. Bahkan mata ... • JCreator • JBuilder • VisualJ

62

tambahkan kode program di bProses:

LATIHAN 1. Dari Jframe atau Form diatas tambahkan data masukan:

No.Telepon

Email

Hobby Setelah selesai ditambahkan dijalankan Form tersebut kemudian Print Screen/Screen Shoot kirim ke email [email protected] dengan Subject/Topik : TUGAS JAVA SWING Nama_MHS ditunggu paling lambat Tanggal 17 Juli 2017