Abstract Class & Interface

Slides:



Advertisements
Presentasi serupa
EXCEPTION HANDLING.
Advertisements

Java Fundamentals: 5. Java Advanced
Try, Catch, Finally Throws
Deklarasi Class Kelas pada Java dideklarasikan dengan menggunakan kata kunci class. Contoh : class Mobil { String warna; int thn_prod; } Mobil Data :
Pemrograman Berorientasi Objek
Variabel di Java Variabel merupakan sebuah tempat untuk menyimpan data. Di Java setiap pembuatan variabel harus ditentukan tipe.
Other OOP Basic Viska Mutiawani, M.Sc. Konsep penting Method overloading Encapsulation this keyword final static.
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
POLIMORFISME Imam Fahrur Rozi 01.
Pemrograman JAVA (TIB09)
Workshop SCS: Java Game Programming
Polymorphism Viska Mutiawani, M.Sc.
Dasar Exception Handling
Pemrograman Berorientasi Objek
SLIDE OTOMATIS PINDAH DALAM WAKTU 4-5 MENIT. A:kiriB:kanan Deklarasikan sebuah variabel dengan nama ‘isi’ yang mempunyai type array of double dengan ukuran.
Overriding, Overloading, Polymorphism
Pemrograman Java Pewarisan / Inheritance Polimorfisme Pemrograman Java.
Inheritance Ery Setiyawan Jullev A.
ABSTRACT CLASS & INTERFACE
Overriding, Overloading, Polymorphism
Pemrograman Berorientasi Objek
Dasar exception handling
Encapsulation, Inheritance, polymorphism, dan interface
Pemrograman Berorientasi Objek 1
Mendapatkan input dari keyboard
Mendapatkan Input dari Keyboard
Variabel, Method & Constructor Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
INHERITANCE, POLYMORPHISM, DAN INTERFACE
Pewarisan, Polimorfisme, dan Interface
EXCEPTION TRY-CATCH-FINALLY
KELAS INNER, KELAS ABSTRACT, DAN INTERFACE
Abstract Class.
- PERTEMUAN 4 - PERULANGAN
Pertemuan : Object Oriented Programming
Desain Berorientasi object
07 Advanced Class Features
NAMA : JUMADI Npm : Interface mendefinisikan sebuah cara standar dan umum dalam menetapkan sifat-sifat dari class-class. Mereka menyediakan.
OOP Java 06 Polymorphism.
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Inheritance, polymorphism, dan interface
Advanced Class Features 2
INHERITANCE (Oleh : Nur Hayatin, S.ST)
Exceptional Pendahuluan Bugs dan error dalam sebuah program sangat sering muncul meskipun program tersebut dibuat oleh programmer berkemampuan tinggi.
Do you remember this?.  Strategy  Concrete Strategy  Context  Client Strategy Pattern consists of..
OOP Java Minggu 2b Dasar OOP. Class (1) Deklarasi class : [ *] class { [ *] } Cat : [] = optional, * = repeat 0-N.
Algoritma &Pemrograman 1
MATERI IV OOP (Object Oriented Programming) Chapter II.
Dasar exception handling
Try, Catch, Finally Throws
Penanganan Eksepsi.
Pertemuan 6 PEWARISAN AND POLYMORPHISM
PEMROGRAMAN VISUAL II Agenda Perkuliahan :
POLYMORPHISM, ABSTRACT CLASS DAN INTERFACE
Modul 6: Abstract Class, abstract method
Access Modifier.
Inheritance dan Kata Kunci static
POLYMORPHISM, ABSTRACT CLASS DAN INTERFACE
Constructor dan Overloading
Abstract Class.
MODIFIER JAVA.
Algoritma & Pemrograman 1
MENGENAL KEYWORD this, static, final
Constructor overloading
Matakuliah : M0864/Programming I
Exception Handling, Package, Abstract Class & Interface
MENGENAL KEYWORD this, static, final
Pemrograman Berorientasi Object
Pemrograman Berorientasi Object
Modul 6: Abstract Class, abstract method
Oleh : Rahmat Robi Waliyansyah, M.Kom.
Transcript presentasi:

Abstract Class & Interface Viska Mutiawani, M.Sc

Konsep Penting Abstract class Abstract method Interface Implements Final Static Exception

Contoh Polimorfisme Lihat contoh program yang disediakan pada polimorfisme.

Method getArea() pada Shape Apa yang terjadi jika: public class TestShape { public static void main(String[] args) { // Constructing a Shape instance poses problem! Shape s3 = new Shape("green"); System.out.println(s3); System.out.println("Area is " + s3.getArea()); } } Method getArea() akan bermasalah jika shapenya belum diketahui bentuk apa. Untuk mengatasi masalah ini, kita buat method getArea() sebagai abstract. abstract public double getArea();

Rewrite Shape as abstract

Abstract Class Pada pewarisan, jika super-kelas mempunyai method yang harus di override oleh sub-kelasnya, maka class dan method tersebut kita buat sebagai abstract.

Abstract Class Sebagai contoh, kita akan membuat superclass bernama Makhluk Hidup. Class ini mempunyai method tertentu seperti bernapas, makan, tidur, dan berjalan. Akan tetapi, ada beberapa method di dalam superclass yang sifatnya tidak dapat digeneralisasi. Kita ambil contoh, method berjalan. Tidak semua makhluk hidup berjalan dalam cara yang sama. Kita manusia berjalan dengan dua kaki, dimana kehidupan lainnya seperti anjing berjalan dengan empat kaki.

Makhluk Hidup Manusia Hewan Anjing Ayam

Abstract Method Diawali dengan kata abstract. Tidak ada implementasi. Langsung diakhiri oleh semicolon (;). Bertujuan agar di sub-kelasnya di override. Contoh:

Abstract Class Diawali dengan kata abstract. Tidak dapat di instantiate. Namun sub-tipe tetap berlaku sehingga polimorfisme tetap berlaku. Hanya abstract class yang dapat memiliki abstract method. Abstract class dapat juga mempunyai method yang tidak abstract. Abstract class memaksa sub-kelas utk override abstract method. Jika tidak, maka sub-kelas harus juga bertipe abstract.

Abstract Class Jika sub-kelas tidak meng-override abstract method, pasti akan muncul error, contoh:

Contoh Contoh class pd Java API.

Catatan Method abstract tidak dapat dideklarasi final. Kenapa? Method abstract tidak dapat dibuat dengan akses private. Kenapa?

Interface Interface: cara standar dalam menetapkan sifat-sifat umum dari class. Interface juga bersifat polimorfisme. Interface digunakan untuk mengatasi kemiripan-kemiripan pada kelas yang tidak berhubungan.

Interface Anggaplah ada class Garis dan BilanganBulat. Kedua kelas mempunyai perlakuan untuk membandingkan 2 buah object garis atau 2 buah object bilangan bulat. Karena kemiripannya, kita dapat membuat suatu interface Pembanding yang berisi method signature (tanpa implementasi) berkaitan dengan perbandingan 2 objek.

Interface Diawali dengan kata kunci interface, bukan class. Method pada interface adalah abstract karena tidak memerlukan implementasi. (namun tanpa keyword abstract) Interface tidak mengandung method constructor. Semua method berakses public. Kata kunci public tidak harus dideklarasikan. Field secara otomatis menjadi public static final.

Contoh Contoh pd Java API. Interface ActionListener

Final Kata kunci final jika digunakan pada method maka method tersebut tidak dapat di override. Contoh pada class String.

Static Jika method dideklarasi static, pemanggilan method di luar dari kelas harus memasukkan nama kelasnya juga. Contoh:

Exception Exception: pengecualian Exception: suatu peristiwa yang muncul sewaktu eksekusi program, yang mengganggu jalannya instruksi normal pada program. Cara handle: Blok try-catch-finally Throws exception pada class

Contoh program yg dapat menimbulkan Exception Jika pada class BilanganBulat pd project garis- bulat kita tambahkan method bagi, seperti ini: public double bagi(int y) { double z = 0; z = x / y; return z; } Maka akan dapat menghasilkan exception jika nilai y yang dimasukkan adalah 0.

Cara antisipasi exception Buat blok try-catch: public double bagi(int y) { double z = 0; try{ z = x / y; } catch (Exception e){ System.out.println("Masukkan nilai y yang bukan 0"); return z;