3. Object Oriented Programming (OOP) adalah
salah satu pendekatan pemrograman atau
paradigma untuk pengembangan /
development suatu perangkat lunak
komputer , dimana dalam struktur perangkat
lunak tersebut didasarkan kepada interaksi
objek dalam penyelesaian suatu proses .
4. Konsep Dasar OOP
Objek
Kelas
Encapsulation
Inheritance
Polymorphism
5. Objek (1)
Sebutkan objek-objek yg ada di sekeliling kita !
Apakah Objek itu ?
Objek : benda-benda mati ?
Objek : makhluk hidup ?
Objek : barang abstrak ?
6. Objek (2)
Objek dalam OOP, memiliki pengertian yg sama
dengan objek-objek yg ada di sekeliling kita !
Objek bisa berupa :
Benda benda mati
Makhluk hidup
Barang/ sesuatu yg abstrak
Objek : entitas yg ada disekeliling kita.
Mirip seperti Entitas yg anda tentukan ketika
membuat ER diagram.
8. Objek (4)
Objek memiliki :
Nama : identifikasi dari objek
State : status / ciri / atribut yg terdapat pd objek
Behavior : apa yg dapat dilakukan oleh objek tsb
Dalam OOP :
State = atribut
Behavior = method
Ekivalensinya dalam bhs non-OOP :
State = variabel
Behavior = fungsi / prosedur
9. Objek (5)
Sebutkan dari objek-objek disekitar kita :
Nama objek
State / atribut
Behavior
Any question, please… ?
10. Kelas (1)
Objek monitor komputer di meja anda apakah
sama dengan objek monitor di meja teman
sebelah kiri/kanan anda ?
Karakteristiknya (state & behavior) sama, tetapi
merupakan 2 benda yg berbeda.
11. Kelas (2)
Kelas : kelompok objek-objek yg memiliki
karakteristik yg sama (yg sejenis)
Kelas : definisi /spesifikasi dari objek-objek
Lebih tepatnya kelas di-analogi-kan sebagai :
Cetakan kue
Blueprint / denah bangunan
Resep masakan
dll
Dari satu cetakan bisa dibuat banyak kue yg
bentuknya sama.
Dari satu blueprint rumah bisa dibuat banyak
rumah yg bentuk, ukuran, bahannya sama.
12. Kelas (3)
Misalkan sebuah kelas :
Nama kelas : Orang
Atribut :
Nama : String
Umur : integer
Method :
makan()
Orang
+ nama : String
+ umur : int
+ makan() : void
13. Kelas (3--)
Demo menggunakan Netbeans
Membuat kelas
Membuat kelas testnya dengan membentuk
beberapa objek
Latihan membuat kelas & kelas test sendiri
14. Encapsulation (1)
Objek & kelas : perwujudan dari konsep
encapsulation
Dua pengertian dari konsep encapsulation :
Atribut & method dibungkus jadi satu
Atribut (& method) dapat dilindungi sehingga tidak
dapat diakses dari luar secara langsung
Bisa dilakukan pada bahasa non-OOP ?
Bhs C : bisa memasukkan fungsi kedalam struct ?
Bhs Pascal : bisa memasukkan procedure / function
kedalam record ?
15. Encapsulation (2)
Penjelasan pengertian kedua (akan dijelaskan
lebih jauh pada pertemuan kuliah mengenai Get
& Set method)
16. Inheritance (1)
Menggunakan kata
kunci : extends
Kelas induk : parent,
superclass, ancestor
Kelas anak : child,
subclass, descendant
Kita akan membuat
turunan dari kelas
Orang :
Orang
+ nama : String
+ umur : int
+ makan() : void
Mahasiswa
+ nrp : String
+ belajar() : void
17. Inheritance (2)
Kodenya sbb :
public class Mahasiswa extends Orang {
public String nrp;
public void belajar() {
System.out.println(“Mhs “ + nama +
“ sedang belajar”);
}
}
18. Inheritance (3)
Kelas testnya sbb :
public class TestMahasiswa {
public static void main(String[] args) {
Mahasiswa mhs;
mhs.nama = “Deden”;
mhs.umur = 20;
mhs.nrp = “0874001”;
mhs.makan();
mhs.belajar();
}
}
19. Inheritance (4)
Tiga Konsep inheritance :
Semua atribut & method dari kelas induk diturunkan
ke kelas anak
Pada kelas anak dapat menambahkan atribut &
method yang tidak ada pada kelas induk
Pada kelas anak dapat memodifikasi method
(behavior) yang sudah ada di kelas induk
20. Polymorphism (1)
Polymorphism : mengambil banyak bentuk
Kelakuan bisa berubah-ubah tergantung dari
objek yang memanggilnya.
Akan dijelaskan lebih jauh pada pertemuan
tentang Polymorphism