ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

dokumen-dokumen yang mirip
KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Inheritance. Pertemuan 8 Pemrograman Berbasis Obyek

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

Pemrograman Berbasis Objek Inheritance

Inheritance. Topik 5/17/2013

Inheritance (Pewarisan) Pengertian dasar inheritance

subclass class manapun private default protected public package yang sama

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

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Konsep Pemrograman Berbasis Obyek

Bahasa Pemrograman :: Polimorfism and Abstraction

Modul Bahasa Pemrograman 1

KONSEP OOP: PEWARISAN / INHERITANCE

BAB 6 INHERITANCE Tujuan:

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

KONSEP OOP: PEWARISAN / INHERITANCE

Pemrograman Berorientasi Obyek. Ramos Somya

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

Object Oriented Programming 1

KONSEP OBJEK ORIENTASI PROGRAM

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

Inheritance dan Kata Kunci static

BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

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

public class B extends A {... }

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

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

PEMROGRAMAN JAVA : KONSEP PEMROGRAMAN BERORIENTASI OBJEK

ENKAPSULASI Data Hiding

UNIVERSITAS GUNADARMA

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

(INHERITANCE) Nurochman

Object Oriented Programming LOGO

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

LAPORAN RESMI INHERITANCE

Bahasa Pemrograman 2.

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

Polymorphism (Polimorfisme)

BAB 1 PENGENALAN PEMROGRAMAN BERORIENTASI OBJEK

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

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

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

Membuat dan Menggunakan Class

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

PRAKTIKUM I Class dan Obyek

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

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

Mengenal Object Oriented Programming (OOP)

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

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

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

Pewarisan atau Inheritance

Dasar-Dasar OOP di Java

PertemuanI. Object Oriented

INTERAKSI ANTAR OBJECT

Modul II Object Oriented Programming

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Object Oriented Programming (Class, Inheritance, Encapsulation dan Interface)

DASAR PEMROGRAMAN. Konsep Pemrograman Berorientasi Objek. Yoannita

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

KONSEP Pemrograman Berorientasi Objek KARMILASARI

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

Pemrograman Berorientasi. Polimorfisme dan Binding

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

Pertemuan 11 Object Oriented Program

MODUL 4 ENCAPSULATION, INHERITANCE DAN POLYMORPHISM

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

PEMROGRAMAN JAVA. Yoannita. Konsep Pemrograman Berorientasi Objek. Company LOGO

Pertemuan 4 Halaman 1/1. Class Inheritance

Praktikum 3 Konsep Class, Attribute dan Method

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

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

IKG2I4 / Software Project I

Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

Bahasa Pemograman II. Object Oriented Programming

Chapter 10 Polimorphism

Pengenalan pemrograman berorientasi obyek

Polymorphism. Oleh : Agus Priyanto, M.Kom

Bahasa Pemrograman 2.

Bab 8. Dasar-Dasar OOP

Pemrograman Berorientasi. Abstract & Interface

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

JOBSHEET 8 INHERITANCE (PEWARISAN)

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

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

Konsep Pemrograman Berorientasi Obyek

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

KONSEP OOP: PEWARISAN / INHERITANCE

PENGHITUNGAN JARI-JARI PADA OBJEK LINGKARAN DALAM BAHASA JAVA

BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

Pemrograman Berorientasi. Inheritance

Gambar 1: Hirarki class

PEMROGRAMAN BERORIENTASI OBJEK KONSEP PBO

Pemrograman Berorientasi Objek Danu Wira Pangestu

SUMBER BELAJAR PENUNJANG PLPG

Pemrograman Berorientasi Objek INHERITANCE

Transkripsi:

Materi kuliah ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM Ir. Roedi Goernida, MT. (roedig@yahoo.com) Program Studi Sistem Informasi Fakultas Rekayasa Industri Institut Teknologi Telkom Bandung 2011 1 Pengertian Inti Java Programming Object Oriented Programming. Dalam dunia nyata, semua benda dianggap objek. Setiap objek memiliki: atribut (state) variable tingkah laku (behaviour). method (fungsi / prosedur) Karakteristik utama pemrograman berorientasi objek: 1. Abstraksi (abstraction) 2. Pengkapsulan (encapsulation) 3.Pewarisan (Inheritance) 4. Polimorfisme Tujuan merahasiakan source code suatu produk/aplikasi. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 1 2

Abstraksi (1/3) Metoda dasar yang digunakan dalam menangani kompleksitas Penyembunyian suatu kerumitan dalam suatu proses pemrograman. Cara membuat suatu abstraksi akan berbeda dan bergantung kepada kebutuhan dalam penyelesaian yang diinginkan. Abstraksi merupakan method yang belum memiliki implementasi dan fokus kepada apa objek-nya. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 2 3 Abstraksi (2/3) Bentuk abstraksi prosedural / fungsional / algoritmik. Abstract class dalam java digunakan untuk mendeklarasikan karakteristik umum dari subclass. Untuk mendeklarasikan sebuah abstract class digunakan keyword abstract : abstract] class [class_name] Sebuah abstract class bisa berisi method tanpa diimplementasikan hanya sebuah method tanpa class. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 3 4

Abstraksi (3/3) Abstract Method Method yang memiliki isi atau definisi public abstract class Hitung1 { public abstract double getluas(); public abstract double getkeliling(); public class Lingkaran extends Hitung1 { private double radius; public Lingkaran (double radius) { this.radius = radius; public double getradius() { return radius; public double getluas() { return Math.PI * radius * radius; public double getkeliling() { return 2 * Math.PI * radius; Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 4 5 Encapsulation (1/2) Pengkapsulan pengkombinasian antara data dan prosedur ataupun fungsi yang memanipulasinya ke dalam sebuah wadah yang disebut objek. Tujuan untuk melindungi program/aplikasi dan data yang sedang diolah agar tidak diakses sembarangan oleh program lainnya. Manfaat proses Encapsulation: - Information hiding - Interface to Access data - Modularitas Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 5 6

Encapsulation (2/2) Metoda pengkapsulan terdiri dari: - Akses default - Akses public - Akses protected - Akses private Wilayah Akses public protected default private Di kelas yg sama Beda kelas, di package yg sama Beda kelas, beda package, di kelas turunan Beda kelas, beda package, tidak di kelas turunan x x x x x x Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 6 7 Contoh class Mobil1 { public String Merek; public Mobil1 (String n){ this.merek = n; public String tampilmerek() { return Merek; public void tipe() { System.out.println("Sedan"); public void transmisi () { System.out.println("Matik"); public void bahanbakar () { System.out.println("Pertamaxx`"); class Tampil1 { public static void main(string arg[]) { Mobil Tampil1 = new Mobil("Honda"); System.out.println("Nama: " + Tampil1.tampilMerek] Tampil1.Merek(); Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 7 8

Inheritance (1/3) Suatu entitas / objek dapat memiliki entitas / objek turunan. Pewarisan kemampuan suatu objek untuk menurunkan karakteristik yang dimilikinya (data atau prosedur / fungsi) kepada objek yang lain. Kemudahan dalam mengembangkan suatu objek baru dengan menggunakan sifat-sifat objek lain. Dalam Java, class Object merupakan class yang berada pada tingkat hirarki tertinggi Membangun class baru dengan menggunakan class yang telah ada. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 8 9 Inheritance (2/3) Bertujuan untuk menggunakan kembali code yang telah didefinisikan pada class yang telah ada untuk membentuk class baru. Parent / base-class suatu class yang memiliki class turunan. Child / sub-class class dari turunan itu sendiri. pesawat jet propeller Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 9 10

Inheritance (3/3) Suatu subclass dapat mewarisi semua atau sebagian member yang dimiliki oleh parent class hanya memperluas (extend) parent class-nya. Digunakan disebabkan oleh: Tidak perlu banyak menulis ulang sekelompok kode. Mengkoreksi / memperbaiki pengkodean pada base-class ke seluruh subclass. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 10 11 Deklarasi Inheritance Menambahkan kata kunci extends setelah deklarasi nama class, dan diikuti dengan nama parent class-nya. Kata kunci extends tersebut akan memberitahu Java compiler bahwa akan dilakukan perluasan class. public class A { public class B extends A { Hand-out: Enkapsulasi & Inheritansi IS1313-9 Hal. 11 12

Apa yang diwariskan? Semua field yang ditandai sebagai "dilindungi" atau "publik". "private" hanya dapat dilihat oleh kelas yang menyatakan mereka "protected" hanya dapat dilihat oleh kelas yang dinyatakan, dan pada setiap subclass Semua public dan method-method yang diprotek. Hand-out: Enkapsulasi & Inheritansi IS1313-9 Hal. 12 13 Contoh (1/2) public class Karyawan { public String nama; public double gaji; public class Supervisor extends Karyawan { public String departemen; class A { int x; int y; void TampilkanNilaixy() { System.out.println("Nilai x:" + x + ", y:" + y); class B extends A { int z; void TampilkanJumlah() { //subclass dapat mengakses member dari superclass System.out.println("Jumlah = " + (x+y+z)); Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 13 14

Contoh (2/2) class Parent1 { public int x = 67; class Child extends Parent1 { public int x = 6; public void Info(int x) { System.out.println("Nilai x sebagai " + "parameter = " + x); System.out.println("Data member x " + "di class Child = " + this.x); System.out.println("Data member x " + "di class Parent = " + super.x); class NilaiX { public static void main(string args[]) { Child tes = new Child(); tes.info(16); Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 14 15 Polimorfisme Merupakan suatu sifat yang memungkinkan nama yang sama dapat menyatakan tindakan yang berbeda. Secara umum, merupakan kemampuan untuk muncul dalam berbagai bentuk. Polymorphism di Java: Kemampuan suatu reference variable untuk bertindak (melakukan method) sesuai dengan object yang dipegangnya. Memungkinkan berbagai object dari berbagai subclass diperlakukan sebagai sebuah object super class. Super class yang dimaksud akan melakukan tindakan sesuai dengan object subclass tersebut. Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 56 16

Contoh public class Siswa { public String getname(){ System.out.println( Nama Siswa: + nama); return nama; public class Karyawan { public String getname(){ System.out.println( Nama Karyawan: + nama); return nama; Hand-out: Enkapsulasi & Inheritansi IS1313-09 Hal. 16 17 Selesai 18