Modul ini menuntaskan perangkat desain berorientasi objek yang diletakkan oleh dua modul sebelumnya. Kontrak interface dideklarasikan, dilekatkan pada banyak kelas, lalu dikembangkan lewat metode default dan static tanpa merusak implementasi lama, dan kebiasaan pemrograman ke interface diterapkan pada collections pustaka standar. Bagian akhirnya mengenalkan interface fungsional sebagai fondasi lambda serta melengkapi enum dengan konstruktor, metode, EnumSet, EnumMap, dan perannya sebagai singleton. Setelah modul ini selesai, kode dapat dirancang terhadap tipe kontraknya, bukan terhadap kelas konkretnya.
Interface dan Desain
Interface, metode default dan static, pemrograman ke interface, interface fungsional, dan enum.
0/0 selesai
- Interface
Mendeklarasikan kontrak murni dengan interface dan memanfaatkan polimorfisme lewat tipe kontraknya.
- Metode Default dan Static
Mengembangkan interface tanpa merusak implementasi lewat metode default Java 8 dan aturan resolusi diamond.
- Pemrograman ke Interface
Membiasakan tipe List untuk variabel ArrayList, kebiasaan kecil yang memisahkan kode profesional.
- Interface Fungsional
Mengenal Runnable, Comparator, dan keluarga java.util.function sebagai fondasi lambda.
- Pendalaman Enum
Melengkapi enum dengan konstruktor dan metode, memakai EnumSet dan EnumMap, serta enum sebagai singleton.