View
59
Download
0
Category
Preview:
Citation preview
MODUL PRAKTIKUM
PEMROGRAMAN BERORIENTASI OBJEK
EK 3212
Tim Penyusun:
Heri Wijayanto,ST., MT. NIP: 19750612 2000 03 1001
I.B.K. Widiartha, S.T., M.T. NIP: 19700514 1999 03 1002
Ir. Sri Endang Anjarwani, M.Kom NIP: 19660403 2006 04 2001
Budi Irmawati, S.Kom., M.T. NIP: 19721019 1999 03 2 001
L a b o r a t o r i u m K o m p u t e r
J u r u s a n T e k n i k E l e k t r o
F a k u l t a s T e k n i k
Universitas Mataram
2 0 1 2
Modul Praktikum Pemrograman Berorientasi Objek 2
Ketentuan Umum
Praktikum ini merupakan matakuliah wajib untuk Mahasiswa Jurusan Teknik
Elektro konsentrasi komputer informatika.
Praktikum ini merupakan kelanjutan dari matakuliah Pemrograman Berbasis
Obyek (PBO) dengan kode matakuliah EK3105 dengan bobot 2 SKS.
Sehingga tiap praktikan diwajibkan telah mengambil matakuliah PBO
tersebut.
Bahasa pemrograman yang digunakan dalam praktikum ini adalah bahasa
pemrograman JAVA.
Tidak diperkenankan menggunakan IDE visual seperti Netbeans.
Setiap praktikan membuat program dan laporan sendiri
Modul Praktikum Pemrograman Berorientasi Objek 3
MODUL 1
CLASS dan OBJECT
1. TUJUAN
1. Mahasiswa dapat mendeklarasikan struktur class dalam java.
2. Mahasiswa dapat membedakan pemrograman terstruktur dan berbasis
obyek. Tergantung pada cara pandang permasalahan dari pemrogram.
3. Mahasiswa mengetahui cara deklarasi, instansiasi inisialisasi dan
mengakses class.
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah perbedaan antara pemrograman terstruktur dan berbasis
obyek?
Apakah yang dimaksud dengan obyek dalam dunia pemrograman?
Apakah yang dimaksud dengan class?
Bagaimana membuat sebuah class?
Bagaimana menggunakan sebuah obyek?
Bagaimana mendeklarasikan obyek?
Bagaimana menginstasiasi obyek?
Apa yang terjadi dalam memori komputer setelah obyek diinstasiasi?
Sebuatkan dua langkah cara menginisialisasi obyek!
Bagaimana menggunakan method/fungsi sebuah obyek?
Bagaimana mengakses data dari sebuah obyek?
3. TUGAS PENDAHULUAN
Melakukan installasi bahasa pemrograman Java.
Mengetahui lokasi download master JDK
Mengetahui setting path aplikasi JDK
Modul Praktikum Pemrograman Berorientasi Objek 4
Kenali lingkungan pengembangan aplikasi dalam bahasa Java.
Membuat source code program dalam java
Mengkompilasi program
Menjalankan program
Melakukan debugging
4. LANGKAH KERJA
1. Buat program mencari luas dan keliling persegi, segitiga, dan
lingkaran dalam bentuk terstruktur.
2. Buatlah sebuah obyek penghitung luas dan keliling seperti langkah 1
tetapi dengan paradigma obyek.
3. Bandingkan antara pemrograman tersetruktur dengan yang berbasis
obyek
4. Cetak source code dan hasil running program dalam modul ini.
5. Buat analisa hasil praktikum
6. Rumuskan kesimpulan
Modul Praktikum Pemrograman Berorientasi Objek 5
MODUL 2
METHOD dan DATA
1. TUJUAN
1. Mahasiswa memahami penggunaan method dan data dalam sebuah
class.
2. Mahasiswa memahami pembuatan berbagai variasi bentuk method
3. Mahasiswa memahami berbagai tipe data yang didukung
4. Mahasiswa dapat membedakan antara obyek dan variabel primitive
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Sebutkan beberapa data primitive?
Bagaimana membuat sebuah method?
Bagaimana memasukkan argument dalam sebuah method?
Bagaimana mengakses return value dari sebuah method?
Jelaskan sebuah obyek dapat juga dikatakan sebagai sebuah tipe data?
Bagaimana mengakses method atau data dalam satu class?
Bagaimana mengakses method atau data dari class berbeda?
3. TUGAS PENDAHULUAN
Buatlah sebuah class yang berisi
Penggunaan tipe-tipe data primitive
Method-method sebagai berikut :
o void namaMethod();
o int namaMethod();
o void namaMethod(char c);
o float namaMethod(int a, int b);
Modul Praktikum Pemrograman Berorientasi Objek 6
4. LANGKAH KERJA
1. Sebuah program bernama translator memiliki berbagai fungsi untuk
menterjemahkan bahasa Ingris ke bahasa Indonesia, atau sebaliknya.
2. Rencanakan beberapa obyek dalam program tersebut dengan data dan
fungsi-fungsinya menggunakan UML. (Notasi terlampir dan buat
program yang sederhana saja)
3. Buatlah programnya, lakukan kompilasi
4. Cetak sorce code dan hasil running program dalam modul ini.
5. Buat analisa hasil praktikum.
6. Rumuskan kesimpulan.
Modul Praktikum Pemrograman Berorientasi Objek 7
MODUL 3
CONSTRUCTOR
1. TUJUAN
1. Mahasiswa memahami penggunaan konstruktor dalam OOP.
2. Mahasiswa memahami penggunaan overloading
3. Mahasiswa memahami penggunaan overloading konstruktor
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah yang dimaksud dengan constructor?
Apakah manfaat dari constructor dalam sebuah class?
Bagaimana membuat contruktor?
Apabila sebuah class tidak dituliskan constructornya, apa yang terjadi?
Apakah perbedaan constructor dengan method biasa dalam sebuah
class?
.
3. TUGAS PENDAHULUAN
Buatlah sebuah class dengan berbagai bentuk constructor.
class X{
X(){ }
X(int a){}
.
Gunakan masing-masing constructor tersebut dan bandingkan
perbedaannya.
4. LANGKAH KERJA
1. Buatlah Obyek Mahasiswa. Obyek mahasiswa tersebut oleh obyek
yang lain dapat dikonstruksi secara default (tanpa nama dan tanpa
nim), tambahkan beberapa konstruktor lain dari obyek mahasiswa ini.
2. Buat Obyek Matakuliah dengan berbagai konstruktornya.
Modul Praktikum Pemrograman Berorientasi Objek 8
3. Buatlah program untuk Instansiasi beberapa 10 obyek mahasiswa,
setiap mahasiswa menginstansiasi 10 obyek matakuliah.
Kuliah k1 = new Kuliah(PBO);
Mahasiswa x1 = new Mahasiswa(nim,nama,k1);
4. Lipatgandakan jumlah obyek yang diinstansiasi dari 10 mahasiswa
menjadi 20, 40, 80, 160 dst. Lakukan juga langkah ini untuk
matakuliah. Sampai memori komputer overload (Gunakan
perulangan).
5. Cetak hasil running program.
6. Cetak sorce code dan hasil running program dalam modul ini.
7. Konstruksikan sebuah class yang terdiri dari:
a. variabel : String nama
b. fungsi : cetakNama()
setNama()
Bentuk sebuah objek A dari class tersebut dan tentukan nilai variabel
nama.
Bentuk sebuah objek B dari class yang sama, kemudian buat objek
tersebut sama dengan objek A.
Rubah nilai variabel nama pada objek B, kemudian tampilkan nilai
variabel nama pada objek A.
8. Jelaskan apa yang terjadi dalam memori.
9. Rumuskan kesimpulan
Modul Praktikum Pemrograman Berorientasi Objek 9
MODUL 4
OVERLOADING
1. TUJUAN
1. Mahasiswa memahami penggunaan overloading
2. Mahasiswa memahami penggunaan overloading konstruktor
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah yang dimaksud dengan overloading?
Apakah manfaat overloading?
Sebutkan contoh penggunaan overloading?
Sebutkan contoh penggunaan overloading constructor?.
3. TUGAS PENDAHULUAN
Buatlah sebuah obyek bernama komparator
Buatlah obyek kubus
Buatlah obyek lingkaran
Dalam class komparator buat beberapa method yang overloading, class
ini dapat membandingkan String, integer, char, Luas lingkaran, isi
kubus, dan lain-lain.
4. LANGKAH KERJA
1. Setelah tugas pendahuluan berjalan dengan baik, Uji method-method
overloading tersebut dalam sebuah program.
2. Bandingkan program diatas dengan sebuah program yang tidak
menggunakan overloading.
3. Bandingkan program pada tugas pendahuluan dengan overloading
yang dilakukan di constructor/overloading constructor.
4. Rencanakan sebuah obyek yang memperlihatkan penggunaan
oveloading konstruktor dan overloading method secara tepat
Modul Praktikum Pemrograman Berorientasi Objek 10
5. Uji jalannya program pada langkah kempat
6. Buatlah beberapa alasan yang mendukung rencana dari langkah
percobaan yang keempat diatas.
7. Cetak sorce code dan hasil running program dalam modul ini.
8. Buat analisa hasil praktikum secara keseluruhan dalam modul
overloading ini.
9. Rumuskan kesimpulan
Modul Praktikum Pemrograman Berorientasi Objek 11
MODUL 5
ENCAPSULATION
1. TUJUAN
1. Mahasiswa dapat memahami konsep pemodulan, penyembunyian
kerumitan dan implementasinya.
2. Mahasiswa dapat menerapkan berbagai modifier encapsulation secara
tepat dalam program.
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah yang dimaksud dengan encapsulation?
Menggapa diperlukan encapsulation?
Sebutkan dan jelaskan modifier yang dipakai dalam encapsulation
yaitu public, default, protected dan private!
Apakah pengaruhnya dalam stabilitas program jika semua data dan
method di-public-kan?
Apakah pengaruhnya dalam keamanan program jika semua data dan
method di-public-kan?
Jelaskan manfaat encapsulation ini dalam hal mempermudah
pemrograman!
3. TUGAS PENDAHULUAN
1. Buatlah sebuah class untuk menggambarkan obyek pembanding
seperti pada modul overloading.
2. Gunakan modifier encapsulation yang tepat dalam percobaan kali ini
setepat mungkin.
4. LANGKAH KERJA
Modul Praktikum Pemrograman Berorientasi Objek 12
1. Uji hasil program yang dibuat dalam tugas pendahuluan diatas
sehingga memperlihatkan fungsi encapsulation.
2. Dari contoh program diatas jelaskan menggapa aspek kemudahan,
keamanan, stabilitas program dapat dicapai!
3. Contohkan efek yang terjadi dalam sebuah program dan running
program jika satu atau dua method atau data dari percobaan ini
digunakan modifier yang tidak tepat.
4. Cetak source code hasil running program.
5. Buat analisa hasil praktikum.
6. Rumuskan kesimpulan.
Modul Praktikum Pemrograman Berorientasi Objek 13
MODUL 6
INHERITANCE dan OVERRIDING
1. TUJUAN
1. Mahasiswa memahami dan bisa mengimplementasikan konsep
penurunan sifat.
2. Mahasiswa memahami dan bisa mengimplementasikan secara tepat
overriding.
3. Mahasisawa memahami perbedaan overriding dan overloading?
4. Mahasiswa memahami penggunaan abstract class.
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah manfaat penurunan/inheritance?
Bagaimana melakukan penuruanan?
Apakah yang dimaksud dengan overriding?
Apakah perbedaan overriding dengan overloading?
Jelaskan menggapa penurunan ini dapat mempermdah pemrograman?
Apakah yang dimaksud dengan abstract class?
Apakah manfaat abstract class?
Apakah perbeaan abstract ckass dengan class biasa?
3. TUGAS PENDAHULUAN
1. Turunkan class translator yang dibuat pada percobaan modul ke 2
sehingga memiliki kemampuan untuk membandingkan dua buah kata.
2. Buat Overriding method dalam class turunan translator ini.
3. Ubah struktur class dengan membuat class abstract diatas class
translator
Modul Praktikum Pemrograman Berorientasi Objek 14
4. Turunkan class abstract tersebut menjadi translator bahasa yang lain,
misalnya bahasa Sasak-Indonesia atau yang lain
4. LANGKAH KERJA
1. Buat bagan struktur class dalam UML
2. Ujilah hasil percobaan pada tugas pendahuluan.
3. Cetak source code dan hasil running program.
4. Buat analisa hasil praktikum.
5. Rumuskan kesimpulan.
Modul Praktikum Pemrograman Berorientasi Objek 15
MODUL 7
POLIMORFISME
1. TUJUAN
1. Mahasiswa paham konsep polymorphisme dalam OOP dan bisa
mengimplementasikannya.
2. Mahasiswa dapat menerapkan polimorphisme dalam pemrograman
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Apakah yang dimaksud dengan polimorphisme?
Jelaskan manfaat dari polimorphisme?
Apakah yang dimaksud dengan casting?
Berilah beberapa contoh polimorphisme dalam library Java.
3. TUGAS PENDAHULUAN
Buatlah class-class abstract dalam UML:
Hewan, Orang, Kendaraan.
Hewan diturunkan menjadi : Kucing, Ikan dan Burung
Orang diturunkan menjadi : Koki dan Pedagang
Kendaraan dirutunkan menjadi : Bus, Cidomo, Sepeda
Hubugan:
Koki bisa memasak Hewan
Pedangang bisa menjual Hewan
Pedaganng bisa menjual Kendaraan
4. LANGKAH KERJA
1. Buatlah program yang mengimplementasikan permasalahan seperti
dalam Tugas Pendahuluan.
2. Lakukan proses casting sehingga terlihat konsep polimorphisme dalam
program anda, sebelum dimasak oleh Koki berbagai hewan di casting
Modul Praktikum Pemrograman Berorientasi Objek 16
dahulu menjadi class Hewan. Lakukan langkah ini untuk Kendaraan
yang akan dijual oleh Pedagang
3. Cetak source code dan hasil running program.
4. Buat analisa hasil praktikum.
5. Rumuskan kesimpulan.
Modul Praktikum Pemrograman Berorientasi Objek 17
MODUL 8
MULTI INHERITANCE
1. TUJUAN
Mahasiswa memahami dan bisa mengimplementasikan konsep penurunan
sifat dari beberapa class induk dengan menggunakan interface.
2. DASAR TEORI
Jawablah pertanyaan-pertanyaan dibawah ini sebagai dasar teori yang
dimasukkan dalam laporan.
Bagaimana mengaplikasikan multipleinheritance dalam java
Kenapa penurunan dari banyak class sebenarnya harus dihindari,
kalaupun harus dilakukan dalam Java harus menggunakan interface,
jelaskan?
Apakah perbedaan anatara interfece dengan class abstract
Berilah/carilah contoh penggunaan interface dalam library Java API!
3. TUGAS PENDAHULUAN
1. Modifikasi program dalam modul 7 dengan menggunakan interface
2. Buat rancangan anda dalam UML
4. LANGKAH KERJA
1. Buatlah program hasil rancangan anda di Tugas Pendahuluan modul
ini
2. Uji Program.
3. Cetak source code dan hasil running program.
4. Buatlah program lain yang memanfaatkan interface seperti dalam tugas
pendahuluan untuk implementasi yang berbeda.
5. Buat analisa hasil praktikum.
6. Rumuskan kesimpulan.
Modul Praktikum Pemrograman Berorientasi Objek 18
LAMPIRAN INSTALLASI JAVA DEVELOPMENT KIT
Modul Praktikum Pemrograman Berorientasi Objek 19
Modul Praktikum Pemrograman Berorientasi Objek 20
LAMPIRAN II
Penggambaran class dengan UML (Unified Modeling Language)
Dalam subbab ini hanya akan menjelaskan class diagram dan hanya yang
diperlukan saja. Berbagai symbol yang digunakan adalah sebagai berikut:
Gambar L2.1 Notasi Class
Gambar L2.2 Pewarisan
Nama_Class
NamaAtribut1 : TipeData1=NilaiDefault1 NamaAtribut2 : TipeData2=NilaiDefault2 NamaAtributN : TipeData1=NilaiDefaultN
NamaMethod1(DaftarArgumen1) : TipeHasil1 NamaMethod2(DaftarArgumen2) : TipeHasil2
NamaMethodN(DaftarArgumenN) : TipeHasilN
Responsibilities
Hewan
Sapi Ayam
Modul Praktikum Pemrograman Berorientasi Objek 21
Gambar L2.3 Asosiasi
Hewan Koki memasak
Hewan Pedagang Menjual
Recommended