PAKET DAN INTERFACE MUH. IZZUDDIN MAHALI, M.CS. PT. Elektronika FT UNY

dokumen-dokumen yang mirip
Paket dan Interface. Nur Hasanah, M.Cs

Paket dan Interface. 15 th week Estu Sinduningrum ST,MT

Paket dan Interface. 15 th week Estu Sinduningrum ST,MT

Tujuan. Pengertian Interface Mendeklarasikan Interface Pewarisan Interface Menggunakan Interface

LAPORAN RESMI INHERITANCE

Membuat dan Menggunakan Class

Project polimorfisme :

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

PEWARISAN D E W I S A R T I K A, M. K O M

Pewarisan Sifat Objek. Nur Hasanah, M.Cs

Kelompok 5. import javax.swing.joptionpane; public class enkapsulasi. public static void main (String[]args)

PROJECT KELOMPOK 5 R5L. package polimorfisme; interface Poligon { // Deklarasi methode. double Luas(); double Keliling(); String displayinfo();

Inheritance dan Kata Kunci static

Pemrograman Berorientasi. Polimorfisme dan Binding

PEMROGRAMAN BERORIENTASI OBJEK

private double panjang, lebar; // Definisi method // Konstruktor public SegiEmpat(double p, double l) {

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

BAB II VARIABEL DAN TIPE DATA

PEWARISAN SIFAT OBYEK

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Pemrograman Berorientasi Objek INHERITANCE

1.Tujuan. 2. Latar Belakang. Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final

Gambar 1: Hirarki class

Method yang ada pada parent class(superclass) didefinisikan kembali oleh kelas anaknya (subclass).

Pemrograman Berorientasi. Abstract & Interface

TPI4202 e-tp.ub.ac.id

Modul Praktikum Pemrograman

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 5 INTERFACE

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XII KELAS DAN OBYEK

Bahasa Pemrograman :: Polimorfism and Abstraction

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Konsep Pemrograman Berorientasi Pada Objek Dengan. Java Netbeans

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

Pewarisan, Polimorfisme, dan Interface

LAPORAN V PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK

Sekarang, kita akan mencoba untuk menganalisa program Java pertama : public class Hello {

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

ABSTRACT & INTERFACE. Pemrograman Lanjut Herman Tolle

2 TIPE DATA DAN VARIABEL

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XIII POLYMORPHISM

SUMBER BELAJAR PENUNJANG PLPG

CLASS, METHOD DAN MODIFIER

BAHASA PEMROGRAMAN JAVA

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

Bahasa Pemrograman 2.

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

PRAKTIKUM 5 PAKET, IMPORT DAN INTERFACE

Bab. Contoh-01. class Kotak { int pjg; // panjang int lbr; // lebar int tgi; // tinggi } Kotak pjg lbr tgi

3/31/2011. Tujuan. Inheritance, Polymorphism,& Interfaces. Inheritance / pewarisan. Inheritance / pewarisan. Inheritance / pewarisan

BAB 6 INHERITANCE Tujuan:

Polymorphism (Polimorfisme)

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Abstract Class dan Interface. Viska Mutiawani, M.Sc

PEMAHAMAN DASAR DASAR JAVA

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

Bahasa Pemrograman 2.

Pemrograman Berorientasi Objek Danu Wira Pangestu

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

PAKET (PACKAGE) 20 Januari 2012

IKG2I4 / Software Project I

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

Projek Kelompok 4. //tipe array nama array={nilai elemen 1,...,elemen N}; Fajar[] a = {new Fajar("Hallo"), new Fajar("Apa"), new Fajar("Kabar")};

Elemen Dasar Dalam Bahasa Java

KONSEP OOP: PEWARISAN / INHERITANCE

Praktikum 3 Konsep Class, Attribute dan Method

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

KONSEP OOP: PEWARISAN / INHERITANCE

Modul 2 Dasar Pemrograman Java. Oleh: Mike Yuliana PENS-ITS

Inheritance (Pewarisan) Pengertian dasar inheritance

Mata Kuliah : Pemrograman Berbasis Objek Pertemuan : 11

Method / Fungsi / Sub Program

Pemrograman Berorientasi. Package & Hubungan Antar Kelas

Pertemuan 4 Halaman 1/1. Class Inheritance

Percobaan 5 Paket dan Import, Interface

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Modul Bahasa Pemrograman 1

Pemrograman Berorientasi. Class dan Obyek 2

Mata Kuliah : Pemrograman Berbasis Objek Pertemuan : 7

subclass class manapun private default protected public package yang sama

IKG2I4 / Software Project I

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

Method. Pemrograman Dasar Sistem Informasi PTIIK Herman Tolle

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Modul 4: Lebih Dalam lagi tentang Class, Objek dan Method

//constraktor awal class Kotak6 { double panjang;

Pewarisan (Inheritance)

INTERAKSI ANTAR OBJECT

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

OBJECT, CLASS DAN METHOD. 1. Mengetahui pengertian dari objek & class 2. Dapat membuat program sederhana dari java dengan menggunakna objek dan class

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

PEMROGRAMAN BERORIENTASI OBJEK

BAB 2 INPUT DARI KEYBOARD

Class dan Object. PBO/Java/Ayuliana/Revisi

Transkripsi:

PAKET DAN INTERFACE MUH. IZZUDDIN MAHALI, M.CS.

APA ITU PAKET PAKET ADALAH TEMPAT DARI KELAS-KELAS MAUPUN INTERFACE-INTERFACE YANG KITA BUAT. KEGUNAAN UTAMA PAKET ADALAH UNTUK MENGHINDARI ADANYA KESAMAAN NAMA PADA KELAS-KELAS YANG DIBUAT. 2

MEMBUAT PAKET MENGGUNAKAN STATEMENT PACKAGE DIIKUTI NAMA PAKET, DITULISKAN DIBAGIAN PALING ATAS DARI FILE KODE. PACKAGE NAMAPAKET; NAMAPAKET ADALAH NAMA PAKET YANG DIGUNAKAN SEBAGAI TEMPAT PENYIMPANAN FILE.JAVA DAN.CLASS. CONTOH: PACKAGE CONTOHPKG; 3

MENGIMPORT PACKET CONTOH LINGKARAN.JAVA PACKAGE CONTOHPKG; PUBLIC CLASS LINGKARAN { PRIVATE FINAL DOUBLE PI = 3.1416; PRIVATE DOUBLE R; PUBLIC LINGKARAN(DOUBLE R) { THIS.R = R; PUBLIC DOUBLE LUAS() { RETURN (PI * R * R); PUBLIC DOUBLE KELILING() { RETURN (2 * PI * R); 4

MENGIMPORT PACKET CONTOH SEGITIGA.JAVA PACKAGE CONTOHPKG; PUBLIC CLASS SEGITIGA { PRIVATE DOUBLE TINGGI; PRIVATE DOUBLE ALAS; PUBLIC SEGITIGA(DOUBLE TINGGI, DOUBLE ALAS) { THIS.TINGGI = TINGGI; THIS.ALAS = ALAS; PUBLIC DOUBLE LUAS() { RETURN ((TINGGI * ALAS)/2); 5

MENGIMPORT PACKET CONTOH DEMOPANGGILPAKET.JAVA // MENGIMPOR SEMUA KELAS YANG TERDAPAT PADA PAKET CONTOHPKG IMPORT CONTOHPKG.*; CLASS DEMOPANGGILPAKET { PUBLIC STATIC VOID MAIN(STRING[] ARGS) { LINGKARAN OBLINGKARAN = NEW LINGKARAN(7); SEGITIGA OBSEGITIGA = NEW SEGITIGA(4, 3); SYSTEM.OUT.PRINTLN("LUAS LINGKARAN : " + OBLINGKARAN.LUAS()); SYSTEM.OUT.PRINTLN("KELILING LINGKARAN : " + OBLINGKARAN.KELILING()); SYSTEM.OUT.PRINTLN("LUAS SEGITIGA : " + OBSEGITIGA.LUAS()); 6

MENGIMPORT PACKET APABILA KITA HANYA INGIN MENGGUNAKAN SALAH SATU KELAS YANG TERDAPAT DI PAKET CONTOHPKG (MISALNYA: KELAS SEGITIGA), MAKA DITULIS: IMPORT CONTOHPKG.SEGITIGA; 7

PERANAN TINGKAT AKSES DI DALAM PAKET Tingkat Akses private Tingkat Akses protected Tingkat Akses public Tanpa Tingkat Akses Kelas yang sama Ya Ya Ya Ya Kelas turunan Paket sama Bukan kelas turunan Paket sama Kelas Turunan Paket Berbeda Tidak Ya Ya Ya Tidak Tidak Ya Ya Ya Ya Ya Tidak Bukan kelas turunan Paket berbeda Tidak Tidak Ya Tidak 8

PERANAN TINGKAT AKSES DI DALAM PAKET SEBAGAI CATATAN, NILAI-NILAI YANG TERCANTUM PADA TABEL HANYA BERLAKU UNTUK ANGGOTA KELAS (BUKAN UNTUK KELAS). UNTUK KELAS, TINGKAT AKSES YANG DAPAT DITERAPKAN HANYA DUA, YAITU PUBLIC DAN DEFAULT (TANPA TINGKAT AKSES). JIKA PUBLIC, MAKA KELAS TERSEBUT DAPAT DIAKSES OLEH KELAS LAIN YANG BERADA DI DALAM PAKET YANG BERBEDA. JIKA DEFAULT, MAKA KELAS TERSEBUT HANYA DAPAT DIAKSES OLEH KELAS-KELAS YANG BERADA DALAM SATU PAKET. 9

APA ITU INTERFACE SECARA TEKNIS, INTERFACE MERUPAKAN WADAH DARI SEKUMPULAN METHOD YANG BERSIFAT ABSTRAK ATAU TIDAK MEMILIKI IMPLEMENTASI SAMA SEKALI. METHOD-METHOD TERSEBUT BARU AKAN DIIMPLEMENTASI OLEH KELAS-KELAS YANG MENGIMPLEMENTASIKAN INTERFACE YANG BERSANGKUTAN. DALAM JAVA, INTERFACE DIDEFINISIKAN SEBAGAI PROTOKOL ATAU PENGHUBUNG ANTAROBJEK YANG SEBENARNYA TIDAK MEMILIKI RELASI. SEBUAH OBJEK DAPAT MENGIMPLEMENTASIKAN LEBIH DARI SATU INTERFACE. 10

APA ITU INTERFACE SELAIN METHOD, INTERFACE JUGA DAPAT BERISI SEKUMPULAN VARIABEL. VARIABEL YANG DIDEKLARASIKAN DALAM INTERFACE HARUS BERSIFAT FINAL (DIANGGAP SEBAGAI KONSTANTA). 11

MEMBUAT INTERFACE MIRIP DENGAN PEMBUATAN SEBUAH KELAS. MENGGUNAKAN KATA KUNCI INTERFACE BENTUK UMUMNYA: tingkatakses interface NamaInterface{ tipe-kembalian namamethod1(daftar-parameter); tipe-kembalian namamethod2(daftar-parameter); tipe-kembalian namamethodn(daftar-parameter); tipe variabel-final1=nilai; tipe variabel-final2=nilai; tipe variabel-finaln=nilai; 12

MEMBUAT INTERFACE TINGKATAKSES DAPAT DIISI DENGAN PUBLIC ATAU DEFAULT. JIKA DEFAULT, MAKA INTERFACE YANG DIDEFINISIKAN HANYA DAPAT DIKENALI OLEH KELAS MAUPUN INTERFACE-INTERFACE YANG TERDAPAT DI DALAM SATU PAKET YANG SAMA. JIKA PUBLIC, MAKA KELAS MAUPUN INTERFACE- INTERFACE YANG TERDAPAT PADA PAKET LAIN DAPAT MENGENALINYA. 13

MEMBUAT INTERFACE CONTOH PEMBUATAN INTERFACE SEDERHANA DENGAAN TIGA METHOD: interface AlatMusik { void mainkan(); void setelnada(); String ambilnama(); INTERFACE BERNAMA ALATMUSIK, MEMILIKI TIGA METHOD YANG HARUS DIIMPLEMENTASIKAN OLEH KELAS-KELAS YANG MENGIMPLEMENTASIKANNYA. 14

MENGGUNAKAN INTERFACE MENGGUNAKAN KATA KUNCI IMPLEMENTS BENTUK UMUMNYA: tingkatakses class NamaKelas [extends superclass] [implements interface1 [, interface2 [, interfacen]] { // badan kelas 15

CONTOH IMPLEMENTASI INTERFACE DEMOINTERFACE.JAVA 16

interface AlatMusik { void mainkan(); void setelnada(); String ambilnama(); class AlatMusikPetik implements AlatMusik { protected String nama; public void mainkan() { System.out.println(ambilNama() + " dimainkan dengan cara petik"); public void setelnada() { System.out.println("Setel nada pada " + ambilnama()); public String ambilnama() { return nama; 17

Lanjutan.. class AlatMusikTiup implements AlatMusik { protected String nama; public void mainkan() { System.out.println(ambilNama() + " dimainkan dengan cara tiup"); public void setelnada() { System.out.println("Setel nada pada " + ambilnama()); public String ambilnama() { return nama; 18

Lanjutan.. class AlatMusikPukul implements AlatMusik { protected String nama; public void mainkan() { System.out.println(ambilNama() + " dimainkan dengan cara pukul"); public void setelnada() { System.out.println("Setel nada pada " + ambilnama()); public String ambilnama() { return nama; 19

Lanjutan.. class Gitar extends AlatMusikPetik { Gitar(String nama) { this.nama = nama; class Bass extends AlatMusikPetik { Bass(String nama) { this.nama = nama; class DemoInterface { public static void main(string[] args) { AlatMusikPetik gitar, bass; gitar = new Gitar("Gitar"); bass = new Bass("Bass"); gitar.mainkan(); gitar.setelnada(); System.out.println(); bass.mainkan(); bass.setelnada(); 20

INTERFACE DAPAT DITURUNKAN MENJADI INTERFACE LAIN SEPERTI KELAS, INTERFACE DAPAT DITURUNKAN MENJADI INTERFACE LAIN DENGAN KATA KUNCI EXTENDS YANG HARUS DIINGAT, SAAT MENGIMPLEMENTASIKAN INTERFACE TURUNAN, KITA JUGA HARUS MENGIMPLEMENTASIKAN SEMUA METHOD YANG DIDEFINISIKAN PADA INTERFACE INDUK. CONTOH: DEMOINTERFACETURUNAN.JAVA 21

interface IInduk { double tambah(double a, double b); double kurang(double a, double b); interface ITurunan extends IInduk { double kali(double a, double b); double bagi(double a, double b); class Aritmetika implements ITurunan { private double x; private double y; Aritmetika(double x, double y) { this.x = x; this.y = y; 22

Lanjutan.. public double tambah(double a, double b) { return (a + b); public double kurang(double a, double b) { return (a - b); public double kali(double a, double b) { return (a * b); public double bagi(double a, double b) { return (a / b); public void cetakhasil() { System.out.println("x = " + x); System.out.println("y = " + y); System.out.println(); System.out.println("x + y = " + tambah(x, y)); System.out.println("x - y = " + kurang(x, y)); System.out.println("x * y = " + kali(x, y)); System.out.println("x / y = " + bagi(x, y)); 23

Lanjutan.. class DemoInterfaceTurunan { public static void main(string[] args) { // membuat objek Aritmetika dengan x=10.0 dan y=2.5 Aritmetika obj = new Aritmetika(10.0, 2.5); obj.cetakhasil(); 24

S E L E S A I 25