PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

dokumen-dokumen yang mirip
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Inheritance (Pewarisan) Pengertian dasar inheritance

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

KONSEP OBJEK ORIENTASI PROGRAM

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Modul Bahasa Pemrograman 1

LAPORAN RESMI INHERITANCE

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Bahasa Pemrograman :: Polimorfism and Abstraction

Konsep Pemrograman Berbasis Obyek

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XII KELAS DAN OBYEK

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

public class B extends A {... }

PEWARISAN D E W I S A R T I K A, M. K O M

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

Pemrograman Berorientasi Objek INHERITANCE

Inheritance dan Kata Kunci static

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

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

Pemrograman Berorientasi. Polimorfisme dan Binding

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

Object Oriented Programming 1

Inheritance. Pertemuan 8 Pemrograman Berbasis Obyek

Pemrograman Berbasis Objek Inheritance

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

KONSEP OOP: POLYMORPHISM

Polymorphism. Oleh : Agus Priyanto, M.Kom

Pemrograman Berorientasi Objek Danu Wira Pangestu

PEMROGRAMAN BERORIENTASI OBJEK

Inheritance. Topik 5/17/2013

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

PRAKTIKUM I Class dan Obyek

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

Pewarisan Sifat Objek. Nur Hasanah, M.Cs

Pertemuan 11 Object Oriented Program

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

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

Pewarisan atau Inheritance

Bahasa Pemrograman 2.

Bahasa Pemrograman 2.

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Overriding Method Overloading Method Class(iii) [Superclass and subclass] [constructor overloading] Keyword Super

KONSEP OOP: POLYMORPHISM

subclass class manapun private default protected public package yang sama

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Pewarisan (Inheritance)

PERTEMUAN 5 OOP. Objektif : Praktikan mengetahui konsep OOP. Praktikan dapat membuat program sederhana dengan konsep OOP.

Mata Kuliah : Pemrograman Berbasis Objek Pertemuan : 4

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Pemrograman Berorientasi. Abstract & Interface

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

Chapter 10 Polimorphism

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

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

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

BAB 12 ENKAPSULASI, INHERITANCE DAN POLIMORPISME

A. TUJUAN PEMBELAJARAN. 1. Menerapkan konsep enkapsulasi pada class 2. Mendeklarasikan suatu constructor

Pemrograman Berorientasi Objek Danu Wira Pangestu

Bahasa Pemrograman :: Inheritance

Polymorphism (Polimorfisme)

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP)

Abstract Class dan Interface. Viska Mutiawani, M.Sc

INHERITANCE. Gambar 1. Kelas Hierarki Java

BAB 6 INHERITANCE Tujuan:

PERTEMUAN V STREAM DAN OOP TUJUAN PRAKTIKUM. 2. Praktikan memahami pemrograman berbasis objek dengan mengetahui karakteristik OOP.

PEMROGRAMAN JAVA : THREAD

SILABUS MATA KULIAH PEMROGRAMAN JAVA

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

Keyword this untuk memanggil private String pengarang; private String judul;

Employee employee=new Manager();

Modul 07. Pengantar Objek 2

1.Tujuan. 2. Latar Belakang. Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final

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

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

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

(INHERITANCE) Nurochman

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

UML (Unified Modelling Language)

Overriding, Overloading, Polymorphism. Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah

Bahasa Pemrograman 2.

Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP

PRAKTIKUM 5 PAKET, IMPORT DAN INTERFACE

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

Object Oriented Programming LOGO

PertemuanI. Object Oriented

A. Judul Percobaan/praktikum Tipe Data, Keyword, Variabel, Operator dan Teknik Konfersi

Pemrograman Berorientasi. Inheritance

PEMROGRAMAN JAVA : KONSEP PEMROGRAMAN BERORIENTASI OBJEK

BAB 7 OVERLOADING DAN OVERRIDING

Praktikum 3 Konsep Class, Attribute dan Method

Praktikum 9 Exception Handling

JOBSHEET 8 INHERITANCE (PEWARISAN)

Konsep Lanjut Pemrograman Objek

Jobsheet 09. Overloading and Overriding Method

Transkripsi:

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK PRODI SISTEM INFORMASI Inheritance (Pewarisan) Konsep inheritance pada pemrograman berorientasi objek sama dengan konsep pewarisan sifat pada manusia. Manusia selalu mewariskan sifat fisik atau karakter pada keturunannya. Hal ini sama dengan data dan method pada pemrograman yang diwariskan oleh kelas induk pada kelas keturunannya. Kelas induk atau kelas yang mewariskan disebut dengan Super Class, dan kelas anak atau kelas yang diwarisi disebut dengan Sub Class. List 1. tampilprogram.java public class tampilprogram { public static void main(string[] args){ System.out.println("----------------------"); System.out.println("Program INHERITANCE"); System.out.println("----------------------\n"); SubClass sc = new SubClass(); sc.method_subclass(); class SuperClass { public SuperClass(){ System.out.println("Ini adalah konstruktor SuperClass\n"); public void method_superclass(){ System.out.println("Method milik SuperClass\n"); class SubClass extends SuperClass { public SubClass(){ super(); public void method_subclass(){ super.method_superclass(); List 1 adalah program sederhana untuk menjalankan konsep pewarisan dalam pemrograman berorientasi objek. Terdapat 3 kelas dalam satu file tampilprogram.java, yaitu kelas tampilprogram, SuperClass dan SubClass. Ketiga kelas tersebut memiliki yang berbeda. Kelas SuperClass adalah kelas induk yang akan mewariskan data dan method. Kelas SubClass adalah kelas anak yang menerima warisan dari SuperClass atau kelas induknya. Sedangkan kelas tampilprogram adalah sebagai main class atau kelas yang manampilkan data dan methode dari SubClass. Coba buat file tersendiri untuk masing-masing kelas SuperClass dan SubClass. Apakah tampilprogram masih bisa berjalan sebagaimana mestinya?

Encapsulation (Enkapsulasi / Pengkapsulan) Konsep enkapsulasi sama seperti yang sudah dibahas dalam praktikum sebelumnya, yakni mengenai pemberian hak akses data atau method. List 2. tampilenkapsulasi.java public class tampilenkapsulasi { public static void main(string[] args){ System.out.println("Program Perhitungan Gaji dengan konsep ENKAPSULASI"); GajiKaryawan gk = new GajiKaryawan(); gk.setgaji(2500000); gk.hitunggaji(); System.out.println ("Gaji Kotor : "+gk.getgajikotor()); System.out.println ("Gaji Bersih : "+gk.getgajibersih()); class GajiKaryawan { private double gajikotor; private double gajipotongpajak; public double gajibersih; private double potongan = 75000.00; public void setgaji(double gaji){ gajikotor = gaji; public void hitunggaji() { gajipotongpajak = gajikotor - (0.2 * gajikotor); gajibersih = gajipotongpajak - potongan; public double getgajikotor() { return gajikotor; public double getgajibersih() { return gajibersih; List 2 merupakan contoh program sederhana untuk penerapan konsep enkapsulasi. Terdapat dua kelas dalam satu file tampilenkapsulasi.java. Kelas GajiKaryawan berisi informasi penting mengenai gaji karyawan. Beberapa data seperti gajikotor, gajipotonganpajak dan potongan merupakan data rahasia, maka dari itu diberi batasan untuk hak aksesnya. Dalam hal ini bersifat private. Sedangkan gajibersih adalah data yang boleh diakses oleh siapapun, maka dari itu diberi batasan akses untuk semua atau public. Kelas tampilenkapsulasi berisi kelas main yang menjalankan data dan method yang terdapat pada GajiKaryawan. Coba buat file terpisah untuk kelas GajiKaryawan. Apakah tampilenkapsulasi masih bisa berjalan sebagaimana mestinya?

Polymorphism (Polimorfisme) Dalam pemrograman berorientasi objek, ada sifat objek dengan memiliki yang sama namun memiliki behaviour atau tingkah laku yang berbeda. Hal ini disebut dengan polymorphism (polimorfisme). List3. Tampilpolimorfisme.java public class tampilpolimorfisme { public static void main( String [] args ) { System.out.println("-------------------------------------------"); System.out.println("Tampilan Harga Komputer dengan Polimorfisme"); System.out.println("-------------------------------------------"); PameranKomputer ObjKom = new PameranKomputer(); corei3 ci3 = new corei3(); corei5 ci5 = new corei5(); corei7 ci7 = new corei7(); PameranKomputer [] pkom = new PameranKomputer[4]; pkom[0] = ObjKom; pkom[1] = ci3; pkom[2] = ci5; pkom[3] = ci7; System.out.println( "Pameran Komputer[0]: " + pkom[0].pamer()); System.out.println( "Pameran Komputer[1]: " + pkom[1].pamer()); System.out.println( "Pameran Komputer[2]: " + pkom[2].pamer()); System.out.println( "Pameran Komputer[3]: " + pkom[3].pamer()); class PameranKomputer { return ("Harga Macam-macam Spesifikasi Komputer\n"); class corei3 extends PameranKomputer { return ("Core i3, RAM 2 GB, 500 HDD: Rp. 4.000.000\n"); class corei5 extends PameranKomputer { return ("Core i5, RAM 2 GB, 500 HDD: Rp. 5.000.000\n"); class corei7 extends PameranKomputer { return ("Core i7, RAM 2 GB, 500 HDD: Rp. 6.000.000\n"); List3 merupakan program sederhana untuk mengimplementasikan polimorfisme. Terdapat 5 kelas dalam satu file.

Tugas: Program di bawah ini merupakan penerapan dari ketiga konsep PBO yang telah dijelaskan di atas. Ketik dan jalankan program berikut: Jelaskan alur programnya berdasarkan konsep pewarisan, enkapsulasi dan polimorfisme. Tuliskan UML-nya. Tugas dikumpulkan berupa softcopy tanggal 3 November 2012 dan dibahas. karyawan.java public class karyawan { private String namakar; public karyawan( String nama ) { namakar = nama; public String namakaryawan() { return namakar; presdir.java public class presdir extends karyawan { private double gajipresdir; private double divsaham; public presdir(string nama, double gaji, double dividen) { super(nama); setgajipresdir(gaji); setdividen(dividen); public void setgajipresdir(double gaji ){ if (gaji > 0) gajipresdir = gaji; else gajipresdir = 0; public void setdividen(double dividen ){ if (dividen > 0) divsaham = dividen; else divsaham = 0; public String nama() { return super.namakaryawan(); public String jabatan() {

return "Presiden Direktur"; public double gajiperbulan() { return gajipresdir; public double labadividen() { return divsaham; public double income() { return (gajipresdir + divsaham); manajer.java public class manajer extends karyawan { private double gajimanajer; public manajer(string nama, double gaji) { super(nama); setgajimanajer(gaji); public void setgajimanajer( double gaji ){ if (gaji > 0) gajimanajer = gaji; else gajimanajer = 0; public String nama() { return super.namakaryawan(); public String jabatan() { return "Manajer"; public double income() { return gajimanajer;

runningprogram.java import java.text.decimalformat; public class runningprogram { public static void main( String args[] ) { DecimalFormat digitpresisi = new DecimalFormat("0.00"); presdir d = new presdir("wahyu", 12000000.00, 7500000.00); manajer m = new manajer("tuti", 5000000.00); System.out.println("Aplikasi INHERITANCE, ENKAPSULATION, POLYMORPHISM"); System.out.println( "Nama : " + d.namakaryawan() + "\n" + "Jabatan : " + d.jabatan() + "\n" + "Gaji : " + digitpresisi.format(d.gajiperbulan()) + "\n" + "Dividen : " + digitpresisi.format(d.labadividen()) + "\n" + "Total Gaji: " + digitpresisi.format(d.income()) + "\n"); System.out.println( "Nama : " + m.namakaryawan() + "\n" + "Jabatan : " + m.jabatan() + "\n" + "Gaji : " + digitpresisi.format(m.income()) + "\n"); Referensi Buku: Menguasai Java 2 & Object Oriented Programming, Benny Hermawan. Object Oriented Programming using Java, Simon Kendall.