Pemrograman I By : Sri Rezeki Candra Nursari
3 + 1 SKS
Literatur
H.M Deitel, P.J Deitel, Small Java How to Program-sixth Edition, Pearson Prentice Hall, 2005 Elliot B. Koffman, Paul A.T. Wolfgang, Objects, Abstraction, Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 Ian F. Darwin, Java Cookbook, O’Reilly, 2001 Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley, 1999 Moh.Sjukani, Algoritma & Struktur Data dengan C, C++ dan Java, Mitra Wacana Media, Agustus 2005 Rangsang Purnama, Tuntunan Pemrograman Java jilid- 1, Prestasi Pustaka Publisher, Januari 2003 Rangsang Purnama, Tuntunan Pemrograman Java jilid- 2, Prestasi Pustaka Publisher, Juli 2003 Rangsang Purnama, Tuntunan Pemrograman Java jilid 3, Prestasi Pustaka Publisher, Maret 2003 Ariesto Hadi Sutopo, Fajar Masya, Pemrograman Berorientasi Objek dengan Java, Graha Ilmu, 2005 Indrajani, Martin, Pemrograman Berorientasi Objek dengan Java, Elex Media Komputindo, 2004 Melvin Antonius, Damian Bayu Imam Santoso, Carneles, Membuat Animasi dengan Java, Elex Media Komputindo, 2004
Materi *praktikum 1. 2. 3. 4. 5. 6. 7. 8.
Pengertian Java Setup /Instalasi Java Version Control (Git) Anatomi aplikasi Java Classpath Variabel dan Tipe Data Operator Control Flow (If.... Else, For/While) 9. Class & Object
10. 11. 12. 13. 14. 15. 16. 17.
18.
Method Exception Konsep OOP Inheritance Encapsulation Polymorphism Abstract Class & Interface Composition & Aggregation Studi Kasus & Presentasi
INTERFACE Pertemuan 11
3+1 SKS
Interface • Interface mirip dengan class biasa, namun property yang dimilikinya bersifat final • Memiliki deklarasi method tanpa memiliki implementasi • Seperti method abstrak • Memutuskan hubungan antara method dengan class hirarki • Mengimplementasikan suatu interface, suatu class harus mengambil semua method yang telah ditentukan oleh interface tersebut
Pendeklarasian Interface Access-specifier interface NamaInterface { Access-specifier tipe-data namaVariabel1 = value1; Access-specifier tipe-data namaVariabelN = valueN; Access-specifier tipe-data namaMethod1(parameter); Access-specifier tipe-data namaMethodN(parameter); }
Pendeklarasian Interface • Access Specifier yang dapat digunakan hanya public atau tidak ada sama sekali. Jika tidak ada Access Specifier maka interface tersebut hanya dapat digunakan dalam PACKAGE yang sama, dimana dia deklarasikan • Semua Property yang dideklarasikan didalam interface secara otomatis akan dianggap sebagai static final (Sekalipun tidak dituliskan).oleh karena itu pada saat pendeklarasian Anda harus langsung memberikan nilainya • Semua method yang dideklarasikan, sama seperti class abstrak dan tidak memiliki implementasi. Bedanya dengan class abstrak adalah tidak perlu menggunakan keyword abstract pada waktu mendeklarasikan method di dalam interface • Tidak dapat membuat instance dari interface secara langsung dengan menggunakan perintah new • Contoh : Interface buku {
}
Penggunaan Interface •Interface digunakan dengan cara mengimplementasikannya ke suatu class dengan menggunakan keyword implements. •Bentuk Umumnya : Access-specifier class NamaClass implements NamaInterface1, ..., ..., NamaInterfaceN { //class implementation }
Interface • Aturan pada saat mengimplementasikan interface 1. Dapat menggunakan > 1 interface dalam sebuah class dengan memisahkan nama dari setiap interface dengan tanda koma 2. Dapat menggunakan > 1 interface dalam suatu class, memiliki method yang sama 3. Semua method yang diimplementasikan harus dideklarasikan sebagai public 4. Jika semua method yang dideklarasikan di dalam interface diimplementasikan oleh class implementasinya, maka kelas tersebut harus dideklarasikan sebagai abstrak dengan menggunakan keyword abstract
Contoh01: class Kontrol
Contoh01: class TV01
Contoh01: class TV02
Contoh01: class Remote
Contoh01: class User