22
Pemrograman Berorientasi Obyek dengan JAVA Interface Nur Hayatin, S.ST Teknik Informatika – UMM 2011

Pemrograman Berorientasi Obyek dengan JAVA Interface

  • Upload
    gudrun

  • View
    107

  • Download
    13

Embed Size (px)

DESCRIPTION

Pemrograman Berorientasi Obyek dengan JAVA Interface. Nur Hayatin , S.ST Teknik Informatika – UMM 2011. Sub Topik. Deklarasi Interface Interface Modifier Implementasi Interface Hirarki Interface Inheritance pada interface Interface, class, dan abstract class. Interface. - PowerPoint PPT Presentation

Citation preview

Page 1: Pemrograman Berorientasi Obyek dengan JAVA Interface

Pemrograman Berorientasi Obyek dengan JAVA

Interface

Nur Hayatin, S.STTeknik Informatika – UMM

2011

Page 2: Pemrograman Berorientasi Obyek dengan JAVA Interface

Sub Topik

• Deklarasi Interface• Interface Modifier• Implementasi Interface• Hirarki Interface• Inheritance pada interface • Interface, class, dan abstract class

Page 3: Pemrograman Berorientasi Obyek dengan JAVA Interface

Interface

• Menggambarkan cara standart tentang behavior-behavior yang dimiliki oleh class.

• Berisi method abstract.• Untuk model multi inheritance yang

mengijinkan sebuah class dapat memiliki lebih dari satu superclass.

Page 4: Pemrograman Berorientasi Obyek dengan JAVA Interface

Deklarasi Interface

• Syntax :

• Contoh : (interface kosong)

public interface [InterfaceName] {

//beberapa method tanpa body

}

public interface Facsimile{ }

Page 5: Pemrograman Berorientasi Obyek dengan JAVA Interface

Contoh Interface

• Interface facsimile memiliki member : 1 konstanta, 4 method abstract.

public interface Facsimile{ int dotPerInches = 90; boolean dialPhone (String number); void getDocument(int nDoc); boolean sendDocument(int nDoc); void closePhone();}

Page 6: Pemrograman Berorientasi Obyek dengan JAVA Interface

Komponen Pembentuk Interface

1. Modifier2. Keyword “interface”.3. Identifier

Merupakan nama interface yang ditentukan oleh programmer.

4. Body interfaceBerisi method abstract. Atau bisa juga ditambahkan konstanta.

Page 7: Pemrograman Berorientasi Obyek dengan JAVA Interface

Interface Modifier

• Jenis modifier yang dapat ditambahkan pada interface :1. Public2. Protected3. Private4. Static5. Abstract

• Interface dapat memiliki member berupa interface sendiri. Secara implisit member-interface tersebut akan bertipe public dan static.

Page 8: Pemrograman Berorientasi Obyek dengan JAVA Interface

Public

• Interface yang memiliki modifier public dapat diakses dimanapun, diluar maupun didalam package yang sama dengan class/interface yang mengakses.

• Contoh :

public interface Facsimile{ }

Page 9: Pemrograman Berorientasi Obyek dengan JAVA Interface

Protected

• Modifier protected hanya berlaku untuk member-interface yang ada didalam sebuah class.

• Member-interface yang bertipe protected akan dapat diakses didalam subclass, baik didalam maupun diluar package.

• Contoh :

public class Printer{ protected interface Facsimile{ }}

Page 10: Pemrograman Berorientasi Obyek dengan JAVA Interface

Private

• Berlaku untuk member-interface yang ada didalam sebuah class.

• Member-interface yang bertipe private hanya dapat diakses oleh class yang memilikinya.

• Contoh :public class Printer{

private interface Nozzle{}

}

Page 11: Pemrograman Berorientasi Obyek dengan JAVA Interface

Static

• Berlaku untuk member-interface yang ada didalam sebuah class.

• Jika member-interface berada didalam class maka secara implisit selalu static, sehingga akan diinisialisasi sekali saja oleh compiler yaitu pada saat class/interface yang memilikinya diinisialisasi.

Page 12: Pemrograman Berorientasi Obyek dengan JAVA Interface

Abstract

• Semua interface (termasuk member-interface) secara implisit selalu abstract. Karena interface ditujukan untuk menyimpan anggota berupa method abstract.

• Method abstract adalah method yang hanya berupa deklarasi saja. Method ini akan dideklarasi ulang/diimplementasi pada class yang menggunakan interface tersebut.

Page 13: Pemrograman Berorientasi Obyek dengan JAVA Interface

Implementasi• Interface dapat diimplementasikan oleh sebuah

class.• Implementasi interface menggunakan keyword

“implements”.• Syarat : seluruh method abstract yang ada pada

interface harus dideklarasi ulang didalam class yang mengimplementasikannya.

• Syntax :public class [className] implements [interfaceName]{ //beberapa kode disini}

Page 14: Pemrograman Berorientasi Obyek dengan JAVA Interface

Contoh : Implementasi Interface

• Class Printer melakukan implements terhadap Facsimile sehingga didalamnya dideklarasi ulang seluruh method abstract yang dimiliki oleh Facsimile.

public class Printer implements Facsimile{ boolean dialPhone (String number){

return true; } void getDocument(int nDoc){ } boolean sendDocument(int nDoc){

return true; } void closePhone(){ }

}

Page 15: Pemrograman Berorientasi Obyek dengan JAVA Interface

Multi-implements

• Sebuah class dapat melakukan implements lebih dari satu interface.

• Contoh :

Class Person implements terhadap 3 interface sekaligus, yaitu : PersonInterface, LivingThing dan WhateverInterface.

class Person implements PersonInterface,LivingThing, WhateverInterface {

//beberapa kode disini }

Page 16: Pemrograman Berorientasi Obyek dengan JAVA Interface

Multi-implements

• Multi-implements dapat menyelesaikan permasalahan multiple inheritance yang tidak diperbolehkan terjadi pada extends class.

• Gambaran multi-implements :

Interface 1

class

Interface 2 Interface n

Page 17: Pemrograman Berorientasi Obyek dengan JAVA Interface

Hirarki Interface

• Superinterfaceinterface yang letaknya diatas interface lain.

• Subinterfaceinterface yang letaknya dibawah interface lain.

Super interface

Sub interface

Page 18: Pemrograman Berorientasi Obyek dengan JAVA Interface

Inheritance pada Interface

• Interface dapat memiliki hubungan inheritance antar mereka sendiri.

• Menggunakan keyword “extends”.• Contoh :

interface PersonInterface merupakan superinterface dari student interface.

public interface PersonInterface {. . .

}

public interface StudentInterface extends PersonInterface {

. . .}

Page 19: Pemrograman Berorientasi Obyek dengan JAVA Interface

Implements SubInterface

• Sebuah class yang mengimplementasikan subinterface wajib mendeklarasi ulang seluruh method yang ada pada subinterface tersebut dan juga method yang ada pada superinterface-nya.

• Contoh :

• Karena StudentInterface merupakan subclass dari PersonInterface maka class Mahasiswa harus mendeklarasi ulang semua method abstract yang dimiliki oleh kedua interface tersebut.

Class Mahasiswa implements StudentInterface {. . .

}

Page 20: Pemrograman Berorientasi Obyek dengan JAVA Interface

Interface & Class

• Persamaan :– Berupa type data, sehingga interface dapat

digunakan ditempat dimana sebuah class dapat digunakan (berhubungan dengan akses modifier)

• Perbedaan :– Tidak dapat membuat object dari interface– Tidak memiliki segala implementasi dari method

Page 21: Pemrograman Berorientasi Obyek dengan JAVA Interface

Interface & Abstract Class

• Persamaan :– Bertipe abstract– Memiliki method abstract

• Perbedaan :– Interface hanya berisi method abstract– Variabel yang dideklarasikan didalam interface

merupakan constanta– Interface dapat diimplemetasikan secara multi-

inheritance

Page 22: Pemrograman Berorientasi Obyek dengan JAVA Interface

Kesimpulan

• Untuk membuat interface keyword yang dipakai adalah interface.

• Sedangkan untuk menggunakannya keyword yang dipakai adalah implements.

• Interface dapat digunakan untuk mengatasi permasalah multiple inheritance pada java.