oop
TRANSCRIPT
1
OBJECT-ORIENTED PROGRAMMING( O O P )
• Sejarah OOP :– Tahun 1960, ditemukan suatu pembuatan program yang
terstuktur (structured programming). Metode ini dikembangkan dari bahasa C dan Pascal.
– Dengan program yang terstruktur inilah untuk pertama kalinya kita mampu menulis program yang begitu sulit dengan lebih mudah.
• Definisi OOP :– suatu metode dalam pembuatan program
– bertujuan untuk menyelesaikan kompleksnya berbagai masalah program yang terus meningkat.
2
Contoh kasus OOP
• Anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data dari bag administrasi maka manager tersebut tidak harus mengambilnya langsung tetapi dapat memerintahkan petugas bagian administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas adminiistrasi
3
Object dan Class
• Ide dasar pada OOP :– Mengkombinasikan data
dan fungsi (atribute & method) untuk mengakses data menjadi sebuah kesatuan unit yang dikenal dengan nama objek (Object)
– Class adalah blue-print yang akan menghasilkan objek, kumpulan dari beberapa objek yang memiliki kesamaan
FUNGSI ANGGOTA
DATA
FUNGSI ANGGOTA
OBJEK
4
Contoh objek :Dept. penjualan objek 1
Dept. akunting objek 2
Data penjualanManajer
Sekretaris
DataFungsi anggota1Fungsi anggota2
Data PersonaliaManajer
Staff
DataFungsi anggota1Fungsi anggota2
5
Konsep dasar OOP :
• Pewarisan (Inheritance)
• Pengkapsulan (Encapsulation)
• Polimorfisme
6
Pengkapsulan (Encapsulation)
• “Penyembunyian Informasi”• Dapat diartikan juga pengemasan data dan method
dalam wadah bernama objek• Konsep public dan private akan senantiasa
digunakan dalam pengkapsulan• Memastikan pengguna sebuah objek tidak dapat
mengganti keadaan dalam dari sebuah objek, dengan cara yang tidak layak
• Hanya method dalam objek tersebut yang diberi ijin untuk mengakses keadaannya
7
Pewarisan (Inheritance)
• Merupakan sifat dalam bahasa berorientasi objek yang memungkinkan sifat-sifat dari suatu Class diturunkan ke Class lain
• Single Inheritance– Pewarisan terhadap sebuah Class child yang berasal
dari sebuah Class parent
• Multiple Inheritance– Pewarisan terhadap sebuah Class child yang berasal
dari lebih dari satu Class parent
8
Polimorfisme• Istilah ini sendiri berasal dari Bahasa Yunani, yang berarti
“mempunyai banyak bentuk”• Merupakan suatu konsep yang menyatakan sesuatu yang
sama dapat memiliki berbagai bentuk dan perilaku yang berbeda
• Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut.
9
Contoh1. public class Makhluk{2. public void bernafas(){3. }4. public void bertumbuh(){5. }6. public void bereproduksi(){7. }8. public void belajar(){9. }10. public void bekerja(){11. }12. public void berfikir(){13. }14. public void istirahat(){15. }16. public void bergerak(int kaki){17. System.out.println("berjalan dengan kaki "+kaki);18. }19. public void makan(){20. }21. public void minum(){22. }23. }
10
Contoh1. public class MakhlukHidup{2. public void bernafas(){3. }4. public void bertumbuh(){5. }6. public void bereproduksi(){7. }8. public void bergerak(){9. }10. }
11. public class Manusia extends MakhlukHidup{12. public void belajar(){13. }14. public void bekerja(){15. }16. public void berfikir(){17. }18. public void istirahat(){19. }20. public void bergerak(int kaki){21. System.out.println("Manusia berjalan dengan kaki "+kaki);22. }23. }
11
Contoh1. public class Hewan extends MakhlukHidup{2. public void bergerak(int kaki){3. System.out.println("Hewan berjalan dengan kaki "+kaki);4. }5. public void bergerak(String bukanKaki){6. System.out.println("Hewan bergerak dengan menggunakan
"+bukanKaki);7. }8. public void makan(){9. }10. public void minum(){11. }12. }13.
14. public class Utama{15. public static void main (String arg[]){16. Manusia m = new Manusia();17. m.bergerak(2);18.19. Hewan h = new Hewan();20. h.bergerak(4);21. h.bergerak("sirip");22. }23. }
12
Kesimpulan
• Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut.