Konsep Pemrograman Berorientasi Obyek Konsep Objek dan Kelas
Konsep Pemrograman Berorientasi Obyek
Konsep Objek dan Kelas • • • Paradigma pemrograman berorientasi obyek Definisi obyek Sifat (properties) Metode obyek Bahasa-bahasa pemrograman
PP vs PBO Pemrograman Prosedural (PP)/Process-oriented model Semua data dan kode digabung menjadi satu bagian dalam satu program. Pemrograman Berorientasi Objek (PBO)/Object oriented model. Program disusun secara konseptual dengan cara dipecah menjadi bagian-bagian tersendiri yang disebut objek.
Variabel 1 Variabel 2. . Variabel. N Konstanta 1 Konstanta 2 … Konstanta. N Fungsi 1() Fungsi 2() … Fungsi. N() disederhanakan menjadi Objek ke-1 Data 1 … Method 1() Objek ke-2 Data 1 … Method 1() Pemrograman Prosedural Pemrograman Berorientasi Objek
Apa itu Obyek? �di dunia nyata keadaan (state) Obyek perilaku (behavior) �contoh keadaan warna nama jenis perilaku berjalan mengeong
Data Nama Jenis Kelamin …. . Method Bicara Berjalan …. .
Apa itu Obyek? �di dunia software atribut / variabel Obyek method / function �contoh variable warna nama jenis method berjalan() mengeong()
Apa itu Obyek? �Definisi : Entitas dalam sistem yang mewakili suatu entitas dalam dunia nyata
Berorientasi Obyek? Contoh : Pengembangan SIA (Sistem Informasi Akademik) � Berorientasi Prosedur / fungsi mhs_registrasi SIA mhs_krs dosen_insert. Nilai admin_set. Jadwal
Berorientasi Obyek? �Berorientasi Obyek SIA Mahasiswa NIM nama registrasi() update. KRS() Dosen NIP nama insert. Nilai() Administrasi nama alamat insert. Nilai()
Kelas (Class) �Dalam suatu sistem, sering kali ditemui beberapa obyek sejenis �Beberapa obyek sejenis dapat di-identifikasi sebagai suatu kelas (class)
Kelas (Class) �Kelas merupakan “cetakan” (blueprint) dari suatu obyek �Dari suatu kelas kita dapat membuat obyek-obyek baru yang masing-masing dapat memiliki keadaan yang berbeda-beda Sepeda jenis warna berjalan() mengerem() Sepeda 1 jenis = BMX warna = hitam berjalan() mengerem() Sepeda 2 jenis = Mini warna = merah berjalan() mengerem()
Message �Obyek berinteraksi dan berkomunikasi dengan obyek lain melalui message Obyek A Obyek B
Message �Message terdiri dari �Nama obyek yg dikirimi �Nama method yg dipanggil �Parameter yang diperlukan oleh method yang dipanggil berjalan(10 km/jam) Budi Sepeda. Budi
Ciri Utama PBO �Encapsulation (pembungkusan) �Inheritance (pewarisan) �Polymorphism (beda bentuk)
Encapsulation �Suatu metode untuk menyembunyikan suatu bagian implementasi dari kelas dan menyediakan antarmuka bagi kelas/software lain yang akan mengaksesnya. �Direalisasikan dalam bentuk class �contoh Administrator password set. Password()
Deklarasi Kelas �Sintaks deklarasi kelas dalam JAVA: <modifiers> class <class_name> { [<attribute_declarations>] [<method_declarations>] } �<modifiers> �public : kelas dapat diakses dari luar �default : kelas hanya dapat diakses dari satu package
Deklarasi Kelas �Contoh deklarasi kelas dalam JAVA: public class Cat { private int weight; public int get. Weight() { return weight; } public void set. Weight(int new. Weight) { weight = new. Weight; } }
Deklarasi Atribut �<modifiers> �public : kelas dapat diakses dari luar
Deklarasi Method �<modifiers> �public : kelas dapat diakses dari luar
Diagram Kelas �contoh
Diagram Obyek �Kelas �Obyek
Contoh Kasus �Suatu rak buku dalam perpustakaan, rak memiliki kode tertentu, pada rak tersebut kita dapat : menambah sejumlah buku, mengambil sejumlah buku dan mengetahui jumlah buku yang ada dalam rak sekarang. �Dari permasalahan tersebut abstraksikan menjadi suatu kelas! �Gambarkan diagram kelasnya
Pewarisan(Inheritance) �Adalah proses pembentukan kelas baru yang disebut sebagai derived class atau inherited class dari kelas yang sudah ada sebelumnya yang disebut base class �derived class akan mewarisi semua kemampuan base class dan dapat ditambah kemampuan baru yang memiliki sifat lebih khusus
Pewarisan(Inheritance) �Sebagai contoh kita akan memecahkan suatu masalah yang berhubungan dengan input dan output �Pertama, kita akan membuat suatu base class yang sifatnya umum dan telah kita uji tingkat kebenaran serta kemampuannya �Kemudian dari kelas tersebut kita tinggal menurunkan kelas-kelas baru untuk menangani hal – hal yang lebih khusus, seperti input-output ke layar , I/O ke file dan I/O ke printer
Pewarisan(Inheritance)
Pewarisan(Inheritance) public class Employee { public String name; public Double salary; public Date birth. Date; public String get. Details( ) { } }
Pewarisan(Inheritance) public class Manager { public String name; Double salary; Date birth. Date; String department; public String get. Details( ) { } }
Pewarisan(Inheritance) public class Employee { public String name; public Double salary; public Date birth. Date; public String get. Details( ) { } } public class Manager extends Employee { public String department; }
Acces Control �Suatu variabel/method dalam kelas dapat diakses oleh kelas turunannya jika memiliki modifier protected atau public
- Slides: 30