1 / 16

Konsep OOP di Java

Konsep OOP di Java. TRASPAC, Mei 2009 Oleh : Siwi Arie Widadi. Konsep OOP Umum. Inheritance. Enkapsulasi. Polimorfisme. Enkapsulasi. -> Kemampuan dari sebuah object untuk menjadi kontainer terhadap properti atau method yang dimiliki, sekaligus menentukan hak aksesnya. Manfaat Enkapsulasi.

leona
Download Presentation

Konsep OOP di Java

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Konsep OOP Umum Inheritance Enkapsulasi Polimorfisme

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

  4. Manfaat Enkapsulasi • Modularitas, Low Coupling, High Cohesion • Data Hiding

  5. 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; } }

  6. Penerapan Enkapsulasi di Java (2)

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

  8. 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){} }

  9. 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)

  10. 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

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

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

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

  14. 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 {} }

  15. 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(); }

  16. Terima Kasih..

More Related