Modul Praktikum Pbo 1
Modul Praktikum Pbo 1
Oleh:
Fery Updi,M.Kom
TEKNIK INFORMATIKA
Ver.1.2017
1
1 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
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.
II. Pengertian Objek, Class, Instance, Data, Method, dan Hirarki Class
2
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
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.
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
3
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.
NamaFile.java
Komentar Program
Kelas A
Badan Kelas
Deklarasi Data
Main Method
Kelas B
Badan Kelas
Deklarasi Data
4
CLASS rancangan mobil
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
5
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.
6
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.
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
7
2. Instalasi NetBeans
Netbeans-8.0-windows
8
2 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
Hasilnya adalah:
9
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, …).
Contoh :
Mahasiswa objMahasiswa = new Mahasiswa();
Contoh:
objMahasiswa.NIM;
objMahasiswa.bayarKuliah();
10
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
11
b. Dalam lingkungan GUI
menggunakan kelas/komponen JOptionPane dengan method showInputDialog().
Contoh program
12
c. Keyword dalam Java
13
3 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];
14
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:
15
Latihan 4
Hasilnya adalah:
16
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:
17
2. Operator Increment dan Decrement
Memiliki beberapa jenis simbol yaitu : ++, --
18
3. Operator Relasi
Memiliki beberapa jenis simbol yaitu : <, <=, >, >=, ==, !=
19
4. Operator Logika
Memiliki beberapa jenis simbol yaitu : &, &&, |, ||, ^, !
20
5. Operator Kondisi(?:) atau Ternary
Memiliki bentuk sbb : exp1?exp2:exp3
21
22
4 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.
If (boolean_expression)
Statement;
23
Hasilnya adalah:
24
2. Bentuk if - else
Struktur if-else digunakan apabila kita ingin mengeksekusi sebuah statement dengan kondisi
true dan statement yang lain dengan kondisi false.
If (boolean_expression)
Statement1;
…………………;
}
else{
Statement2;
…………………;
}
25
Contoh struktur pemilihan 4
26
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.
27
Contoh struktur pemilihan 6
28
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.
Switch (switch_expression){
Bentuk switch,
Case case_selection1:
Statement1; //block 1
Break;
Case case_selection2:
Statement1; //block 2
Break;
Default:
Statement1; //block n
Break;
}
29
5 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
For (InitExpression; LoopCondition;StepExpression){
Statement1;
Statement2;
…
}
Keterangan:
1. InitExpression – inisialisasi dari variabel loop.
2. LoopCondition - membandingkan variabel loop pada nilai batas.
3. StepExpression - melakukan update pada variabel loop.
30
31
2. Pengulangan while
Statement while loop adalah statement atau blok statement yang diulang-ulang sampai
mencapai kondisi yang cocok.
Bentuk dari while,
While(boolean_expression) {
Statement1;
Statement2;
…
}
32
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,
do {
Statement1;
Statement2;
…
}while(boolean_expression);
33
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
34
35
6 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 :
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”;
36
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
37
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():
38
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.
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());
39
7 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.
40
Contoh :
Hasil Output:
Contoh :
Diberikan data kelulusan mahasiswa sebuah perguruan tinggi sebagai berikut.
41
Int data_lulus [2] [3]
TI 0
SI 1
0 1 2
2015 2016 2017
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-
42
paket. Kumpulan kelas tersebut ada di dalam Java Application Interface (Java API) atau
Java class libraries dan beberapa libraries lainnya.
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:
Contoh:
Hasil Output:
43
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.
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.
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
44
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.
45
8 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.
Caramakan()
Carabersuara() Method
Caragerak()
Caramakan() Caramakan()
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
}
46
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.
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:
Untuk menginduk pada suatu class, kita menggunakan kata kunci extend. Untuk
mengilustrasikan ini, kita akan membuat contoh class induk. Dimisalkan kita memp
unyai class induk yang dinamakan Bapak.
Perhatikan bahwa atribut name dan address dideklarasikan sebagai protected. Alas
annya kita melakukan ini yaitu, kita inginkan atribut-atribut ini untuk bisa diakses oleh
subclass (anak) dari superclass Bapak).
47
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.
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:
48
Kemudian kita buat kelas Balok yang merupakan turunan dari kelas PersegiPanjang
49
Sehingga hasil keluaran programnya adalah:
Catatan:
Tugas dikirim ke email: updi.fery@gmail.com, 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
50
9 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.
51
Contoh Program-1
Buatlah class dengan nama mahasiswa, ketik kode program dibawah ini:
Buatlah main class dengan nama EnkapsulasiDemo, ketik kode program dibawah ini:
52
Contoh Program-2
Buatlah class dengan nama Penggajian, ketik kode program dibawah ini:
Buatlah main class dengan nama EnkapsulasiGajian, ketik kode program dibawah ini:
53
Maka output-nya seperti berikut:
54
10 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
Contoh Program:
55
Maka output-nya seperti berikut
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
56
Definisi class Utama
Contoh 2
Membuat Kelas Hewan
Membuat kelas turunan Kuda yang merupakan turunan dari class Hewan
57
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:
58
10 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.
59
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
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
60
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
Variabel Name:
rbLaki, rbPerempuan, dan cbJurusan
61
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 updi.fery@gmail.com dengan Subject/Topik : TUGAS JAVA SWING
Nama_MHS ditunggu paling lambat Tanggal 17 Juli 2017
62