Konsep OOP di Java TRASPAC, Mei 2009 Oleh : Siwi Arie Widadi.

Slides:



Advertisements
Presentasi serupa
Deklarasi Class Kelas pada Java dideklarasikan dengan menggunakan kata kunci class. Contoh : class Mobil { String warna; int thn_prod; } Mobil Data :
Advertisements

Pemrograman Berorientasi Objek
Membuat class sendiri.
Other OOP Basic Viska Mutiawani, M.Sc. Konsep penting Method overloading Encapsulation this keyword final static.
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
POLIMORFISME Imam Fahrur Rozi 01.
Abstract Class & Interface
Pemrograman JAVA (TIB09)
Workshop SCS: Java Game Programming
Polymorphism Viska Mutiawani, M.Sc.
Overriding, Overloading, Polymorphism
INHERITANCE.
Pemrograman Java Pewarisan / Inheritance Polimorfisme Pemrograman Java.
Method.
Inheritance Ery Setiyawan Jullev A.
Inheritance (Pewarisan)
POLIMORFISM Ery Setiyawan Jullev A.
Overriding, Overloading, Polymorphism
POLIMORFISME 2 Imam Fahrur Rozi 01.
Advanced Class 2 Pertemuan 11 Pemrograman Berbasis Obyek Oleh Tita Karlita.
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.
Pemrograman Berorientasi Objek
INHERITANCE, POLYMORPHISM, DAN INTERFACE
Pewarisan, Polimorfisme, dan Interface
Pemrograman Berorientasi Objek
Pemrograman Berorientasi Obyek Oleh Tita Karlita
POLIMORPHISM Adharul Muttaqin Adharul M -
METHOD Object Oriented Programming with JAVA 2011/2012.
Pertemuan : Object Oriented Programming
OBJECT ORIENTED PROGRAMMING YANES HARDIANTO SUI Politeknik Manufaktur Astra 2011.
Inheritance Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2009.
Desain Berorientasi object
Object Oriented Programming with JAVA 2011/2012
OOP Java 06 Polymorphism.
Public class RelasiDemo { public static void main(String[] args) { //beberapa nilai int i = 37; int j = 42; int k = 42; System.out.println("Nilai variabel...");
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Inheritance, polymorphism, dan interface
Kelas Lanjut 2 Oleh Tita Karlita.
Class and Object Matakuliah : XXXX / Algoritma dan Metode Object Oriented Programming II Pertemuan : 2 Tahun : 2008 Versi : 1/0.
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
MATERI IV OOP (Object Oriented Programming) Chapter II.
Pertemuan 6 PEWARISAN AND POLYMORPHISM
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Access Modifier.
Inheritance dan Kata Kunci static
POLYMORPHISM (KEBANYAKRUPAAN)
Object Oriented Programming
POLYMORPHISM, ABSTRACT CLASS DAN INTERFACE
@kovazzevic | SMKN 24 Jakarta
POLYMORPHISM (KEBANYAKRUPAAN)
Intro to OOP Yesi Novia, S.Kom.
Intro to OOP Yesi Novia, S.Kom.
Enkapsulasi, Accessor Method, Mutator Method
Association, Composition dan Inheritance
MEMBUAT CLASS SENDIRI 2.
Object Oriented Programming
Pemrograman Berorientasi Object
Pilar Object Oriented Programming
Dasar-dasar Pemrograman Objek dg Java
Pemrograman Berorientasi Objek
Visibility, Getter Setter, Pewarisan, Overloading dan Overriding
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding Pemrograman.
@kovazzevic | SMKN 24 Jakarta
Pertemuan 5 Inheritance
DPH1C4 Pemrograman berorientasi Obyek
Bahasa Pemrograman (Pemrograman Visual)
Transcript presentasi:

Konsep OOP di Java TRASPAC, Mei 2009 Oleh : Siwi Arie Widadi

Mei Konsep OOP Umum Inheritance Polimorfisme Enkapsulasi

Mei Enkapsulasi -> Kemampuan dari sebuah object untuk menjadi kontainer terhadap properti atau method yang dimiliki, sekaligus menentukan hak aksesnya.

Mei Manfaat Enkapsulasi  Modularitas, Low Coupling, High Cohesion  Data Hiding

Mei Penerapan Enkapsulasi di Java (1) Versi 1 (tanpa enkapsulasi) class Vehicle { public double load; public double maxLoad; //Initialize new Vehicle with maximal load given public Vehicle(double maxLoad){ this.maxLoad = maxLoad; } }

Mei Penerapan Enkapsulasi di Java (2)

Mei Penerapan Enkapsulasi di Java (3)  Perhatikan bahwa pada TestVehicle, dibuat Vehicle dengan kapasitas maksimum kg.  Tetapi pada program selanjutnya terdapat penambahan boxes yang melebihi kapasitas ( kg)  trouble.  Kenapa trouble? Karena tidak ada pengecekan kapasitas maksimum sehingga vehicle nya kelebihan kapasitas.

Mei Penerapan Enkapsulasi di Java (4) Versi 2 (dengan enkapsulasi) class Vehicle { private double load; private double maxLoad; //Initialize new Vehicle with maximal load given public Vehicle(double maxLoad){this.maxLoad = maxLoad} //Getter and setter //To make sure that load <= maxLoad public boolean addLoad(double load){} }

Mei Inheritance -> Kemampuan sebuah class untuk dapat menggunakan properti dan method dari class yang lain -> Penerapan relasi pada dunia nyata ke dalam program Kegunaan : mapping real object ke dalam programming object (class)

Mei Jenis-jenis Relasi  Asosiasi -> Hubungan / relasi antar dua object secara umum  Agregasi -> Agregasi merupakan hubungan antara satu object dengan object lainnya dimana object satu dengan object lainnya sebenarnya terpisah namun disatukan, sehingga tidak terjadi kebergantungan (Object lain bisa ada walau object penampungnya tidak ada )  Komposisi -> Serupa dengan agregasi hanya saja, terdapat ketergantungan dari salah satuobject

Mei Penerapan Relasi di Java  Extend (is-a) Class Engineer extend Person(){ }  Composition (has-a) Class Engineer(){ private Person person; }

Mei Polimorfisme -> Kemampuan dari sebuah action atau method untuk melakukan sesuatu yang berbeda -> Satu nama, mempunyai beberapa/banyak bentuk

Mei Penerapan Polimorfisme di Java  Overloading Kemampuan sebuah method untuk memiliki parameter yang berbeda. Contoh : System.out.println(tipeParameter parameter);

Mei Penerapan Polimorfisme di Java  Overriding Kemampuan subClass untuk melakukan implementasi tersendiri dari sebuah method yang sudah didefinisikan di superClass public abstract class Animal // class is abstract { private String name; public Animal(String nm) // constructor method { name=nm; } public String getName() // regular method { return (name); } public abstract void speak(); // abstract method - note no {} }

Mei Penerapan Polimorfisme di Java  Dinamic Method Binding Kemampuan superClass untuk menentukan method yang akan dijalankan pada subClass yang berbeda public class AnimalReference{ public static void main(String args[]) Animal ref // set up var for an Animal Cow aCow = new Cow("Bossy"); // makes specific objects Dog aDog = new Dog("Rover"); Snake aSnake = new Snake("Ernie"); // now reference each as an Animal ref = aCow; ref.speak(); ref = aDog; ref.speak(); ref = aSnake; ref.speak(); }

Mei Terima Kasih..