Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.

Slides:



Advertisements
Presentasi serupa
Pemrograman Berorientasi Objek
Advertisements

Membuat class sendiri.
KONSEP OBJECT ORIENTED PROGRAMING (OOP)
POLIMORFISME Imam Fahrur Rozi 01.
Pemrograman JAVA (TIB09)
Pemrograman Berorientasi Objek
Overriding, Overloading, Polymorphism
PACKAGE Universitas Muhammadiyah Malang Fakultas Teknik Jurusan Teknik Informatika Semester Genap Presented By Nur hayatin
INHERITANCE.
Inheritance Ery Setiyawan Jullev A.
Inheritance (Pewarisan)
POLIMORFISM Ery Setiyawan Jullev A.
Overriding, Overloading, Polymorphism
Advanced Class Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
Pertemuan 8 Pemrograman Berbasis Obyek Oleh Tita Karlita
Encapsulation, Inheritance, polymorphism, dan interface
Variabel, Method & Constructor Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
INHERITANCE, POLYMORPHISM, DAN INTERFACE
Pewarisan, Polimorfisme, dan Interface
Inheritance (Pewarisan)
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
Pemrograman Berorientasi Obyek Oleh Tita Karlita
POLIMORPHISM Adharul Muttaqin Adharul M -
METHOD Object Oriented Programming with JAVA 2011/2012.
Pertemuan : Object Oriented Programming
Pemrograman Berorientasi Obyek dengan JAVA Interface
Advanced Class Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
Inheritance Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2009.
PELATIHAN JAVA FUNDAMENTAL
07 Advanced Class Features
Object Oriented Programming with JAVA 2011/2012
MEMBUAT CLASS SENDIRI. Pada akhir pembahasan, peserta diharapkan mampu untuk :  Membuat class  Mendeklarasikan atribut dan method untuk class  Menggunakan.
Polymorphism (bag. 2).
OOP Java 06 Polymorphism.
OOP Java - Tj Konsep Dasar OOP.
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Inheritance, polymorphism, dan interface
INHERITANCE (Oleh : Nur Hayatin, S.ST)
OOP Java Minggu 2b Dasar OOP. Class (1) Deklarasi class : [ *] class { [ *] } Cat : [] = optional, * = repeat 0-N.
Algoritma &Pemrograman 1
Pertemuan 6 PEWARISAN AND POLYMORPHISM
Class & Object Disusun Oleh: Reza Budiawan Untuk:
INHERITANCE (PEWARISAN)
Access Modifier.
Inheritance dan Kata Kunci static
POLYMORPHISM (KEBANYAKRUPAAN)
Pemograman Berorientasi Objek
Encapsulation, Inheritance, Polymorphism
@kovazzevic | SMKN 24 Jakarta
Method & Constructor METHOD.
Constructor dan Overloading
POLYMORPHISM (KEBANYAKRUPAAN)
Pewarisan Disusun Oleh: Reza Budiawan Untuk:
MODIFIER JAVA.
Algoritma & Pemrograman 1
Enkapsulasi, Accessor Method, Mutator Method
Association, Composition dan Inheritance
MEMBUAT CLASS SENDIRI 2.
Konsep Dasar Pemrograman Berorientasi Objek
Inheritance.
Pemrograman Berorientasi Object
INHERITANCE (PEWARISAN)
Subclassing and Inheritance
Pemrograman Berorientasi Object
Pemrograman Berorientasi Object
TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT (OOP)
@kovazzevic | SMKN 24 Jakarta
Pertemuan 5 Inheritance
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding PBO.
DPH1C4 Pemrograman berorientasi Obyek
Transcript presentasi:

Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010

 Mahasiswa mampu : Mengenal karakteristik OOP Memahami konsep encapsulation Memahami konsep inheritance Memahami konsep polymorphism Memahami konsep override pada method

 Ada tiga karakteristik yang dimiliki pemrograman object oriented ; 1. Encapsulation (pembungkusan) 2. Inheritance (pewarisan) 3. Polymorphism (mempunyai banyak bentuk)

 Encapsulation = pembungkusan. Maksudnya adalah pembungkusan atribut juga method oleh class.  Setiap anggota class (atribut, method) pada pemrograman object oriented seluruhnya dideklarasikan didalam class. Tidak ada satu kode pun yang ditulis diluar kelas.

 Gambaran pembungkusan oleh class MyDate pada seluruh anggota class-nya (atribut : date, method getDay, getMonth,…dst).

 Inheritance = pewarisan.  Pewarisan seluruh anggota class (atribut, method) yang dimiliki oleh superclass (kelas induk/parent) ke subclass (kelas anak).

Superclass class yang letaknya di atas class tertentu di dalam hierarki. Subclass class yang letaknya di bawah class tertentu di dalam hierarki.

Semua class dalam Java, termasuk class yang membangun Java API, merupakan subclass dari superclass Object. Yang merupakan hirarki class tertinggi yaitu : java.lang.object Contoh dari hierarki class :

 Keyword yang digunakan pada pewarisan : extends.

 Contoh deklarasi superclass/class parent sederhana misalkan kita buat class parent bernama Person. public class Person { protected String name; protected String address; /** * Default constructor */ public Person(){ System.out.println(“Inside Person:Constructor”); name = ""; address = ""; }.. }

 Sekarang, kita buat class lain bernama Student yang meng-extends class person.  Untuk itu, kita bisa menulis : public class Student extends Person { public Student(){ System.out.println(“Inside Student:Constructor”); }.. }

 Untuk memperjelasnya, perhatikan kode dibawah ini,  Dalam kode ini, kita membuat sebuah object dari class Student. Hasil dari program adalah: public static void main( String[] args ){ Student anna = new Student(); } Inside Person:Constructor Inside Student:Constructor

 Ketika sebuah object Student diinstansiasi, default constructor dari superclass Student dipanggil secara implisit untuk melakukan inisialisasi seperlunya.  Setelah itu, pernyataan di dalam constructor subclass dijalankan.

Flowchart program ditampilkan dibawah ini :

Keuntungan penggunaan Inheritance dalam OOP : Reusability Ketika behavior(method) dideklarasikan dalam superclass, behavior tersebut otomatis diwariskan ke seluruh subclass Jadi, Anda dapat meng-enkode method hanya sekali dan method tersebut dapat digunakan oleh seluruh subclass Sebuah subclass hanya perlu mengimplementasikan perbedaan antara dirinya sendiri dan parent-nya

 Jika sebuah subclass menginginkan implementasi yang berbeda terhadap method dari superclassnya, maka salah satu caranya dapat dilakukan dengan meng-override method bersangkutan.  Sebuah subclass dapat meng-override method superclassnya dengan menyediakan sebuah implementasi baru untuk method tersebut.

berikut ini merupakan implementasi dari method getName didalam superclass Person public class Person { : public String getName(){ System.out.println("Parent: getName"); return name; }

 Untuk meng-override method getName dari superclass Person, di dalam subclass Student, kita tulis :  Sekarang, ketika kita memanggil method getName dari object subclass Student, method getName yang di-override akan dipanggil, dan hasilnya akan menjadi, public class Student extends Person{ : public String getName(){ System.out.println("Student: getName"); return name; } : } Student: getName

Polymorphism (1)Kemampuan sebuah variabel reference untuk merubah behavior sesuai dengan apa yang dipunyai object. (2)polymorphism membuat objek-objek yang berasal dari subclass yang berbeda, diperlakukan sebagai objek-objek dari satu superclass. Hal ini terjadi ketika memilih method yang sesuai untuk diimplementasikan ke objek tertentu berdasarkan pada subclass yang memiliki method bersangkutan.

 Untuk menjelaskan polymorphism, mari kita bahas sebuah contoh.  Berikut adalah hirarki class nya.

misalnya, kita memiliki sebuah method getName dalam superclass Person. Dan kita meng-override method ini di kedua subclass yaitu Student dan Employee public class Student { public String getName(){ System.out.println(“Student Name:” + name); return name; } public class Employee { public String getName(){ System.out.println(“Employee Name:” + name); return name; }

Dalam Java, kita dapat membuat referensi dari suatu superclass ke object dari subclassnya. Sebagai contoh, public static main( String[] args ) { Person ref; Student studentObject = new Student(); Employee employeeObject = new Employee(); ref = studentObject; //titik referensi Person kepada // sebuah object Student }

 Kembali ke method utama kita, ketika kita mencoba memanggil method getName dari referensi Person ref, method getName dari object Student akan dipanggil.  Sekarang, jika kita memberi ref kepada object Employee, maka method getName juga akan dipanggil

public static main( String[] args ) { Person ref; Student studentObject = new Student(); Employee employeeObject = new Employee(); ref = studentObject; //titik referensi Person kepada object Student //getName dari class Student dipanggil String temp=ref.getName(); System.out.println( temp ); ref = employeeObject; //titik referensi Person kepada object Employee //getName dari class Employee dipanggil String temp = ref.getName(); System.out.println( temp ); }

 Contoh lain yang menggambarkan polymorphism adalah ketika kita mencoba untuk passing reference kepada method  jika kita memiliki sebuah method static printInformation yang menerima referensi Person sebagai parameter public static printInformation( Person p ){.. }

Sebenarnya kita dapat passing reference dari Employee dan Student kepada method printInformation selama kedua class tersebut merupakan subclass dari Person public static main( String[] args ) { StudentstudentObject = new Student(); EmployeeemployeeObject = new Employee(); printInformation( studentObject ); printInformation( employeeObject ); }

 Matius S, Sri H, Nerry S, “ Java 2 SE dengan JBuilder”, Andi publisher, Yogyakarta,  Jeni 1