Download - pertemuan_5
![Page 1: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/1.jpg)
1
Polymorphism, abstract class dan interface
![Page 2: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/2.jpg)
2
Polymorphism
• Banyak bentuk• Sebuah instance bisa mereferensi ke beberapa
kelas
![Page 3: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/3.jpg)
3
Abstract class
• Mekanisme yang memungkinkan suatu method ditentukan dari dalam kelas tetapi tidak disertai dengan detail definisinya
• Definisi kelas diletakkan pada masing-masing kelas turunannya
– Public abstract class namaAbstrakClass { }– Public class namaKelas extends namaAbstrakClass { }
![Page 4: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/4.jpg)
4
Interface
• Mengijinkan berbagai kelas untuk menggunakan konstanta secara bersamaan
– Deklarasi interface• Public interface namaInterface{ }
![Page 5: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/5.jpg)
5
Cont.
• Variabel pada interface hanya diperbolehkan yang bertipe public static final
• Public static final tidak harus disebutkan karena otomatis semua variabel akan dianggap bertipe public static final
• Method pada interface bertipe abstract– Public abstract void namaMethod();
![Page 6: pertemuan_5](https://reader035.vdokumen.com/reader035/viewer/2022072007/55cf8eed550346703b971ab1/html5/thumbnails/6.jpg)
6
Abstract vs interface
• Inteface bisa menggunakan method abstract maupun method tidak abstract, sedangkan abstract class harus menggunakan abstract method
• Abstract class dapat mendeklarasikan variabel instance, sedangkan inteface hanya dapat mendeklarasikan konstanta
• Kelas abstract digunakan dencan cara pewarisan, sedangkan interface menggunakan implement