LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

dokumen-dokumen yang mirip
LAPORAN RESMI INHERITANCE

PRAKTIKUM I Class dan Obyek

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Object Oriented Programming 1

Konsep Pemrograman Berbasis Obyek

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Pemrograman Berorientasi Obyek. Ramos Somya

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Pemrograman Berorientasi. Abstract & Interface

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

Bahasa Pemrograman 2.

:: abstract class + interface. :: abstract class

Bahasa Pemrograman 2.

MODUL 3 Inheritance. Tujuan: Mahasiswa dapat mengenal dan memahami konsep inheritance dan cara menerapkan inheritance dengan constructor

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

PEMROGRAMAN BERORIENTASI OBJEK

ENKAPSULASI. 1. Kompetensi Setelah kegiatan perkuliahan selesai, mahasiswa diharapkan dapat:

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Modul II Object Oriented Programming

Bahasa Pemrograman :: Polimorfism and Abstraction

MINGGU VII : RELASI ANTAR KELAS

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

Modul Bahasa Pemrograman 1

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

Inheritance dan Kata Kunci static

MODUL 6. PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (II) dan STRING

MINGGU V : PBO (PEWARISAN)

Pemrograman Web. Pemrograman Berorientasi Objek. 8 Adam Hendra Brata

Pemrograman Berorientasi. Polimorfisme dan Binding

Praktikum KPLBO Final Object Concept I

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

Pewarisan atau Inheritance

Inheritance (Pewarisan) Pengertian dasar inheritance

Pemrograman Berorientasi. Inheritance

KONSEP Pemrograman Berorientasi Objek KARMILASARI

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

MODUL 1 PRAKTIKUM PEMROGRAMAN BERORIENTASI OBYEK(PBO) KELAS DAN OBJEK. TGL PRAKTIKUM : 24 September 2012 :ACHMAD FAJAR NORULLAH NRP :

MODUL 1 PENGENALAN OOP

Paradigma Pemrograman Berorientasi Objek

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 5 INTERFACE

8 - Overriding dan Overloading

PEMROGRAMAN BERORIENTASI OBJEK KONSEP PBO

BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

Pertemuan 11 Object Oriented Program

ENKAPSULASI Data Hiding

PertemuanI. Object Oriented

PEMROGRAMAN BERORIENTASI OBJEK

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Abstract Class dan Interface. Viska Mutiawani, M.Sc

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Pemrograman Berorientasi Obyek. Konsep OOP

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

Pemrograman Berorientasi Objek Danu Wira Pangestu

Pengenalan Obyek. Arna Fariza. Materi

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

DEVAL GUSRION, S.KOM, M.KOM MATAKULIAH BAHASA PEMOGRAMAN JAVA LANJUTAN III

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

KONSEP OOP: PEWARISAN / INHERITANCE

Pemograman Berorientasi Objek. Week 6 Relasi Antar Kelas

INHERITANCE. Gambar 1. Kelas Hierarki Java

Konsep Dasar Pemrograman Berorientasi Objek

TUGAS DASAR PEMROGRAMAN KELAS C DOSEN PENGAMPU : IKA ATSARI DEWI, STP, MP

MODUL 4 ENCAPSULATION, INHERITANCE DAN POLYMORPHISM

PRAKTIKUM OBJECT ORIENTED PROGRAMING

Dengan menggunakan encapsulation kita dapat membatasi akses langsung suatu class atau program kecuali melalui suatu method yang sudah diberikan.

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

Daftar Isi. Daftar Isi... ii MODUL 1 PENGENALAN OOP Pengantar Class Atribut Method This Access Modifier...

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Konsep Pemrograman Berorientasi Obyek

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 4 PENGKAPSULAN

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Bahasa Pemrograman II Modul 1 : Pemrograman Berbasis Objek

3/31/2011. Tujuan. Inheritance, Polymorphism,& Interfaces. Inheritance / pewarisan. Inheritance / pewarisan. Inheritance / pewarisan

Object OOP. Polymor phism

KONSEP OOP: PEWARISAN / INHERITANCE

Bahasa Pemrograman II Modul 2 : Inheritance dan Interface

Pemrograman Web. Pemrograman Berorientasi Objek. Adam Hendra Brata

IKG2I4 / Software Project I

Class. Object. Object Oriented Programming (OOP) Object Oriented Programming (OOP)

Konsep Pemrograman Berorientasi Obyek. Pertemuan 1

Mengenal Object Oriented Programming (OOP)

Pemrograman Berbasis Objek (Polimorfisme)

PEMROGRAMAN BERORIENTASI OBJEK. Nurochman

PEMROGRAMAN JAVA : KONSEP PEMROGRAMAN BERORIENTASI OBJEK

Konsep Pemrograman Berorientasi Obyek

Inheritance dan Polimorfisme

Oleh : Rahmady Liyantanto

Bahasa Pemrograman I VB.Net. Oleh: Erik Perdana Ibrahim, S.Kom 2011

Praktikum 6 Abstract, Interface, Overloading, Overriding, dan Package

Transkripsi:

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI Disusun Oleh : TANGGAL PRAKTIKUM : 02 NOVEMBER 2015 NAMA : IMAM HASAN NRP : 140411100099 KELOMPOK : D 2 DOSEN PENGAMPU : HERMAWAN, S.T., M.T. ASISTEN PRAKTIKUM : ABDUL HAKIM Disetujui :.../.../.../Bangkalan Abdul Hakim 120411100007 LABORATORIUM COMMON COMPUTING JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO MADURA 2015

BAB I PENDAHULUAN 1.1 LATAR BELAKANG Pemrograman Berorientasi Obyek terdapat kode program menjadi kelas-kelas yang di buat berdasarkan objek-objek yang terlibat dalam pengembangan program. Syarat umum yang mendukung pemrograman berorientasi obyek adalah Enkapsulasi, Abstraksi, Interface, Inheritance, Polymorfisme. Abstraksi merupakan pengenalan secara umum terhadap sebuah obyek, tanpa memerlukan pengetahuan secara detail. 1.2 TUJUAN PRAKTIKUM Mahasiswa dapat memahami Karakteristik Abstraksi PBO Mahasiswa dapat memahami Konsep Inheritance PBO Mahasiswa dapat memahami Konsep Polymorfisme PBO

BAB II DASAR TEORI 2.1 TEORI SINGKAT Abstraction is the concept of representing something at high level, without going into too much details. (Greedy Booch - Jacobson) Abstraksi, merupakan pengenalan secara umum, ringkasan atau high level terhadap sebuah obyek, tanpa memerlukan pengetahuan secara detail. Contoh obyek yang bersifat abstrak : Hewan mengabstraksi beragam jenis hewan seperti ayam, anjing, kucing, dll. Sehingga kita bisa menyebut ketiga obyek tersebut adalah hewan, dikarenakan memiliki kelakuan sebagai hewan, seperti: bisa berjalan, bisa berbunyi. Ataupun kita bisa menyebut Mobil dimana ada beragam jenis mobil Sedan, Truk, Bus, dimana ketiga obyek tersebut adalah mobil dikarenakan mempunyai mesin, bisa berjalan, bisa mengangkut orang atau barang, dll.

Dari model Class diagram diatas dapat diuraikan Car sebagai Superclass memiliki berbagai atrbut yang dapat diwariskan kepada obyek Subclass berbagai jenis Car seperti halnya mobil Manual dan Matic. Selain mewarisi atribut, mobil Manual dan Matic harus memiliki fungsional dasar yang harus ada untuk dikatakan sebagai Car yaitu bisa start, stop, accelerate dan breakdown. Namun dikarenakan tiap obyek turunan Subclass memiliki ciri dam kerja yang spesifik dan berbeda antara satu dengan yang lainnya maka kedua obyek Manual dan Car bisa menentukan bagaimana cara kerjanya masing-masing. Karena itu dalam konsep OOP, karakteristik abstraksi obyek didukung melalui penerapan konsep utama OOP yaitu inheritance dan polimorfisme. Melalui inheritance digunakan untuk mewariskan berbagai atribut dan fungsional dasar, sedangkan melalui polimorfisme digunakan

untuk dapat melakukan modifikasi dan pengembangan dari fungsional yang sudah ditetapkan.bjs ( kchkdfhd WARGA LAB TEKNIK INFORMATIKA Untuk realisasi dari abstraksi obyek sendiri, dapat digunakan dua metode yaitu: 1. Abstrak 2. Interface. Obyek abstract terdiri atas methode abstract sebagai jalur pengaksesan yang akan diimplementasikan oleh berbagai obyek turunannya, selain itu obyek abstract dapat dibekali dengan beragam konten properti atribut dan methode yang dapat diwariskan, dikembangkan dan dimodifikasi oleh obyek turunannya. Dengan konsep tersebut obyek abstract didukung secara penuh Inheritance dan Polymorfisme obyek. Berikut aturan dari obyek Abstract: 1. Dapat memiliki keseluruhan property dan mewariskannya kepada obyek turunannya 2. Abstract methode merupakan kontrak yang harus dipenuhi oleh obyek turunan 3. Tidak dapat dibangun instance dari Superclass, sehingga Superclass hanya sebagai prototype. Implementasi melalui instance hanya bisa dilakukan pada subclass. 4. Obyek turunan subclass ditujukan sebagai obyek implementator untuk melakukan perubahan cara kerja dan pengembangan fungsional obyek. Sistematika penulisan kelas Superclass abstract : <modifier> abstract class <Class_name> Sedangkan obyek turunan subclass : <modifier> class <Class_name> extends <Superclass>

5.1 Inheritance Inheritance merupakan pewarisan atribut dan method pada sebuah class yang diperoleh dari class yang telah terdefinisi tersebut. Setiap subclass akan mewarisi state (variabel-variabel) dan behaviour (method-method) dari superclass-nya. Subclass kemudian dapat menambahkan state dan behaviour baru yang spesifik dan dapat pula memodifikasi (override) state dan behaviour yang diturunkan oleh superclass-nya. Keuntungan dari inheritance adalah : 1. Subclass mewarisi semua property yang terdapat didalam Superclass 2. Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada. 3. Pewarisan yang mengikat sesuai kontrak menggunakan abstract class. Keywords inheritance yang perlu diperhatikan : Extends : Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass yang menunjukkan sebagai obyek pewaris. Super : Keyword ini digunakan oleh subclass untuk mengakses properti yang telah disediakan oleh superclass. Sistematika penulisan kelas Subclass abstract : <modifier> class <Class_name> extends <Superclass> 5.2 Polymorfisme Polymorfisme merupakan konsep OOP yang ditujukan untuk melakukan perubahan pada methode implementator di subclass terhadap methode yang telah diwariskan dari superclass. Melalui konsep ini maka polymorfisme juga terkait dengan inheritance, dimana pengembangan obyek dapat dilakukan dengan dinamis dengan tetap dapat menggunakan ulang properti yang telah diwariskan. Kata kunci dari polymorfisme adalah @override, yang menggunakan notifikasi @ sebagai penanda bahwa methode yang dituliskan setelahnya adalah sebuah methode warisan yang dilakukan perubahan fungsi kerjanya. Sistematika penulisan kelas Superclass abstract : @override <modifier> <methode_name>

4. Impelementasi Abstract Class Berikut contoh penerapan abstract class sebagai superclass, class Car : Bentuk yang lain dari abstraksi adalah Interface, dimana Interface merupakan abstraksi dengan bentuk yang lebih sederhana. Berikut ketentuan Interface: 1. Interface hanya digunakan sebagai pengantar atau penghubung sebuah obyek, sehingga bukan obyek itu sendiri. Karena itu interface tidak memiliki properti lengkap namun hanya kontrak methode.

2. Interface diimplementasikan melalui berbagai kelas implementator, yang terikat harus memiliki kontrak methode sebagaimana telah ditentukan interface.

BAB III TUGAS PENDAHULUAN 3.1 SOAL 1. Apa yang dimaksud dengan karakteristik abstraksi obyek? 2. Apa yang dimaksud dengan Interface? 3. Apa yang dimaksud dengan Inheritance? 4. Apa yang dimaksud dengan Polymorfisme? 3.2 JAWABAN 1. Karakteristik abstraksi objek yaitu Pengenalan secara umum suatu objek tanpa memerlukan pengetahuan secara detail. 2. Karakteristik objek didukung oleh melalui penerapan konsep utama OOP yaitu inheritance dan polimorfisme. 3. Interface adalah jenis khusus dari yang hanya berisi method. Biasanya pada interface menggunakn keyword implements. 4. Inheritance adalah penurunan sifat dari kelas induk ke kelas anaknya biasaya pada anaknya ditandai / bercirikan dengan extends. 5. Polimorfisme adalah memiliki konsep yang ssama namun dapat memiliki bentuk dan perilaku yang berbeda

BAB IV IMPLEMENTASI 4.1 SOAL Dalam kehidupan kampus terdapat obyek-obyek Civitas yang berinteraksi yaitu diantaranya: Dosen, Mahasiswa dan Staff. Civitas memiliki atribut umum : Nama Nid Prodi Sedangkan mereka memiliki fungsi dan perilaku yang berbeda: Pekerjaan Jam masuk Dimana sesuai dengan class diagram berikut : Jelaskan bagaimana proses penggunaan dari abstraksi obyek dari program yang anda kembangkan! 4.2 JAWABAN Class Civitas

Class Dosen Class Mahasiswa

Class Staff Class Main

Output

2. Penjelasan dari program di atas yaitu: Class Civitas - Nama kelas harus memiliki kata kunci Abstract - Atribut pada kelas ini bersifat umum meskipun di depannya tidak di tambah modifier secara otomatis akan jadi public. Gunanya supaya bisa di akses oleh kelas turunannya. - public abstract void Masuk_Kerja() ; public abstract void Pekerjaan(); dalam kelas ini ada prosedur yang harus memiliki kata kunci abstract dan prosedur tidak boleh memiliki badan program. Badan program hanya bisa di isi oleh kelas turunannya. - Setter & Getter pada kelas ini gunanya untuk mengeset & memanggil nilai yang sudah di set sebelumnya oleh kelas turunannya. Class Dosen - public class Dosen extends Civitas{

} Pada kelas ini ada kata extends Civitas artinya kelas ini adalah kelas turunan dari kelas Civitas. - Atribut dalam kelas ini bersifat private, gunanya supaya tidak bisa di akses sembarangan oleh kelas lain. - public String getbidangminat() { return "Bidang Minat\t : "+bidangminat; } public void setbidadngminat(string bidangminat) { this.bidangminat = bidangminat; } public String getriset() { return "Riset\t : "+Riset; } public void setriset(string Riset) { this.riset = Riset; } Merupakan prosedur yang di turunkan oleh Civitas kepada kelas Dosen. Sekarang kelas Dosen bisa mengisi badan program dari prosedur yang telah di wariskan oleh kelas Civitas. - Setter & Getter pada kelas ini gunanya untuk mengeset & memanggil nilai. Class Mahasiswa - public class Mahasiswa extends Civitas{ } Pada kelas ini ada kata extends Civitas artinya, kelas ini juga kelas turunan dari kelas Civitas. - Atribut dalam kelas ini bersifat private, gunanya supaya tidak bisa di akses sembarangan oleh kelas lain. - Setter & Getter pada kelas ini gunanya untuk mengeset & memanggil nilai ketika di kelas Main di panggil oleh objek instant. - public void masukkerja() { System.out.println("Jam : "+jam);

} public void Pekerjaan() { System.out.println("Pekerjaan : "+Pekerjaan); } Merupakan prosedur yang di turunkan oleh Civitas kepada kelas Mahasiswa. Sekarang kelas ini bisa mengisi badan program dari prosedur yang telah di wariskan oleh kelas Civitas. Class Staff - public class Staff extends Civitas{ } Pada kelas ini ada kata extends Civitas artinya, kelas ini juga kelas turunan dari kelas Civitas. - Atribut dalam kelas ini bersifat private, gunanya supaya tidak bisa di akses sembarangan oleh kelas lain. - Setter & Getter pada kelas ini gunanya untuk mengeset & memanggil nilai ketika di kelas Main di panggil oleh objek instantnya. - public void masukkerja() { System.out.println("Jam : "+jam); } public void Pekerjaan() { System.out.println("Pekerjaan : "+Pekerjaan); } Merupakan prosedur yang di turunkan oleh Civitas kepada kelas Staff. Sekarang kelas ini bisa mengisi badan program dari prosedur yang telah di wariskan oleh kelas Civitas. Class Main - Dosen kampus = new Dosen(); Menciptakan objek instant dari kelas Dosen. kampus.setnama("hermawan,s.t.,m.kom"); Mengeset nama ke prosedur setnama di Civitas.

System.out.println(kampus.getNama()); Memanggil nama yang sudah di set sebelumnya dari kelas Civitas menggunakan method getnama kampus.setnid("2001"); Mengeset Nid ke prosedur setnid di Civitas. System.out.println(kampus.getNid()); Memanggil Nid yang sudah di set sebelumnya dari kelas Civitas menggunakan method getnid. kampus.setprodi("teknik Informatika"); Mengeset Prodi ke prosedur setprodi di Civitas. System.out.println(kampus.getProdi()); Memanggil Prodi yang sudah di set sebelumnya dari kelas Civitas menggunakan method getprodi. - kampus.setbidadngminat("pbo"); Mengeset nilai berupa String ke prosedur setbidangminat di Dosen. System.out.println(kampus.getBidadng_minat()); Memanggil nilai yang sudah di set sebelumnya di kelas Dosen melalui method getbidangminat. kampus.setriset("abstraksi"); Mengeset nilai berupa String ke prosedur setriset di Dosen. System.out.println(kampus.getRiset()); Memanggil nilai yang sudah di set sebelumnya di kelas Dosen melalui method getriset. - kampus.masukkerja(); kampus.pekerjaan(); Gunanya untuk memanggil prosedur yang sudah di buat di kelas Dosen. Secara otomatis akan tampil langsung hasilnya sesuai dengan yang di isikan di kelas Dosen. Untuk pemanggilan selanjutnya sama saja penjelasannya dengan apa

yang sudah saya jelaskan di kelas main di atas, Cuma sekedar mengubah nama kelas turunannya saja dan prosesdur serta method.

BAB V PENUTUP 5.1 KESIMPULAN Abstraksi merupakan penegenalan secara umum terhadap sebuah obyek, tanpa memerlukan pengetahuan secara detail. Karena itu dalam konsep OOP, karakteristik abstraksi obyek didukung melalui penerapan konsep utama OOP yaitu inheritance dan polymorfisme. Inhertence digunakan untuk mewariskan berbagai atribut dan fungsional dasar, sedangkan dengan polymorfisme digunakan untuk dapat melakukan modifikasi dan pengembangan dari fungsional yang sudah ditetapkan. 5.2 SARAN Menurut saya, penjelasannya mohon diperjelas lagi karena tidak semua para praktikan dapat mengerti materi abstraksi.