0% menganggap dokumen ini bermanfaat (0 suara)
106 tayangan6 halaman

Modul 5 Abstract - Interface

ABSTRACT CLASS, INTERFACE DAN POLYMORPHISM A. Tujuan 1. Memahami class abstract 2. Memahami interface 3. Memahami polymorphism B. Dasar Teori 1. Kelas Abstrak (Abstract Class) Kelas abstrak adalah kelas yang terletak di posisi tertinggi dalam hierarki class. Kelas ini tidak dapat diinstansiasi karena masih bersifat abstrak. Kelas ini hanya berisi variabel-variabel umum dan deklarasi method tanpa detail implementasi. Selanjutnya kelas-kelas yang menjadi turunan dari kelas abstraklah yang akan mengimplementasikan method-method tanpa implementasi tersebut. 2. Interface Interface memungkinkan pemrogram untuk berbagi konstanta atau menentukan bentuk metode yang dapat digunakan oleh sejumlah kelas. Beda interface dengan kelas abstrak : 1. Kelas abstrak dapat mengandung method abstract maupun method tidak abstract, sedangkan interface hanya boleh mengandung method abstract 2. Kelas abstrak dapat mendeklarasikan variabel instans, sedangkan interface hanya dapat mendeklarasikan konstanta 3. Kelas abstrak digunakan oleh kelas lain melalui metode pewarisan dengan kata kunci extends, sedangkan sebuah interface diimplementasikan ke dalam suatu class dengan menggunakan kata kunci implements, dan sebuah kelas dapat mengimplementasikan lebih dari satu interface. 3. Polymorphism Polymorphism merupakan konsep sederhana dalam bahasa pemrograman berorientasi obyek yang berarti kemampuan sebuah obyek untuk menghasilkan aksi yang berbeda, bila method yang sama dipanggil, dimana aksi method yang dikerjakan tergantung dari tipe obyeknya.

Diunggah oleh

David Eka
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
106 tayangan6 halaman

Modul 5 Abstract - Interface

ABSTRACT CLASS, INTERFACE DAN POLYMORPHISM A. Tujuan 1. Memahami class abstract 2. Memahami interface 3. Memahami polymorphism B. Dasar Teori 1. Kelas Abstrak (Abstract Class) Kelas abstrak adalah kelas yang terletak di posisi tertinggi dalam hierarki class. Kelas ini tidak dapat diinstansiasi karena masih bersifat abstrak. Kelas ini hanya berisi variabel-variabel umum dan deklarasi method tanpa detail implementasi. Selanjutnya kelas-kelas yang menjadi turunan dari kelas abstraklah yang akan mengimplementasikan method-method tanpa implementasi tersebut. 2. Interface Interface memungkinkan pemrogram untuk berbagi konstanta atau menentukan bentuk metode yang dapat digunakan oleh sejumlah kelas. Beda interface dengan kelas abstrak : 1. Kelas abstrak dapat mengandung method abstract maupun method tidak abstract, sedangkan interface hanya boleh mengandung method abstract 2. Kelas abstrak dapat mendeklarasikan variabel instans, sedangkan interface hanya dapat mendeklarasikan konstanta 3. Kelas abstrak digunakan oleh kelas lain melalui metode pewarisan dengan kata kunci extends, sedangkan sebuah interface diimplementasikan ke dalam suatu class dengan menggunakan kata kunci implements, dan sebuah kelas dapat mengimplementasikan lebih dari satu interface. 3. Polymorphism Polymorphism merupakan konsep sederhana dalam bahasa pemrograman berorientasi obyek yang berarti kemampuan sebuah obyek untuk menghasilkan aksi yang berbeda, bila method yang sama dipanggil, dimana aksi method yang dikerjakan tergantung dari tipe obyeknya.

Diunggah oleh

David Eka
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 6

MODUL PRAKTIKUM V

ABSTRACT CLASS, INTERFACE DAN POLYMORPHISM


A. Tujuan
1. Memahami class abstract
2. Memahami interface
3. Memahami polymorphism

B. Dasar Teori
1. Kelas Abstrak (Abstract Class)
Kelas abstrak adalah kelas yang terletak di posisi tertinggi dalam hierarki class.
Kelas ini tidak dapat diinstansiasi karena masih bersifat abstrak. Kelas ini hanya
berisi variabel-variabel umum dan deklarasi method tanpa detail implementasi.
Selanjutnya kelas-kelas yang menjadi turunan dari kelas abstraklah yang akan
mengimplementasikan method-method tanpa implementasi tersebut.

2. Interface
Interface memungkinkan pemrogram untuk berbagi konstanta atau
menentukan bentuk metode yang dapat digunakan oleh sejumlah kelas.
Beda interface dengan kelas abstrak :
1. Kelas abstrak dapat mengandung method abstract maupun method tidak
abstract, sedangkan interface hanya boleh mengandung method abstract
2. Kelas abstrak dapat mendeklarasikan variabel instans, sedangkan interface
hanya dapat mendeklarasikan konstanta
3. Kelas abstrak digunakan oleh kelas lain melalui metode pewarisan dengan
kata kunci extends, sedangkan sebuah interface diimplementasikan ke
dalam suatu class dengan menggunakan kata kunci implements, dan
sebuah kelas dapat mengimplementasikan lebih dari satu interface.

3. Polymorphism
Polymorphism merupakan konsep sederhana dalam bahasa pemrograman
berorientasi obyek yang berarti kemampuan sebuah obyek untuk menghasilkan
aksi yang berbeda, bila method yang sama dipanggil, dimana aksi method yang
dikerjakan tergantung dari tipe obyeknya.

C. Latihan
Latihan 1 : Abstract Class

a. Output program adalah


b. Ubahlah method fuel pada class Vehicle menjadi abstract. Kemudian lakukan
kompilasi ulang pada kedua class. Output setelah kompilasi adalah
c. Lakukan override method fuel pada class AeroPlan.
d. Jelaskan mengapa langkah b dan c berbeda!

Latihan 2 : Interface

a. Tambahkan sebuah class untuk menguji program di atas!

b. Output program adalah

c. Kosongkan isi method isEqual. Kemudian jalankan program.


Output program adalah

d. Hapus method isEqual. Kemudian jalankan program!


Output program adalah

Latihan 3 Polymorphism

a. Output program adalah

D. TROUBLESHOOTING PRAKTIKUM
Persegi panjang dibentuk oleh empat titik sudut. Membutuhkan constructor dan
method seperti program di bawah ini. Buat subclass dengan menggunakan class Rect
dan menghasilkan tanpilan minimal seperti berikut:

public class Rect{


//ada 4 variabel utama yang menentukan titik sudut
//panjang
public int x1, y1, x2, y2;
//ini adalah construktor utama
public Rect(int x1,int y1, int x2, int y2){
this.x1=x1;
this.y1=y1;
}
//construktor dengan panjang dan lebar dimulai dari 0,0
public Rect(int width, int height){
this(0,0,width,height);
}
//construktor persegi nol
public Rect(){
this(0,0,0,0);
}
//method untuk menggeser persegi panjang
public void move(int deltax, int deltay){
x1+=deltax;
y1+=deltay;
}
//method untuk memeriksa apa satu titik di dalam persegi
//panjang
public boolean isInside(int x, int y){
return ((x>=x1)&&(x<=x2)&&(y>=y1)&&(y<=y2));
}
//method untuk menggabung (union) persegi panjang
public Rect union(Rect r){
return new Rect((this.x1 <
r.x1)?this.x1:r.x1,(this.y1<r.y1)?this.y1:r.y1,
}

persegi

//method untuk mengetahui perpotongan dua persegi panjang


public Rect intersection(Rect r){
Rect result = new Rect((this.x1<r.x1)?r.x1:this.x1 ,
(this.y1>r.y1)?this.y1:r.y1,
if(result.x1>result.x2){
result.x1=result.x2=0;
}
return result;
}
//method untuk konversi data persegi panjang ke string
public String toString(){
return "["+x1+","+y1+"; "+x2+","+y2+"]";
}
}

E. TUGAS RUMAH
1. Buat sebuah program penerapan abstract class dan polymorphism pada bidang
ilmu matematika misalnya bangun ruang.
2. Buat sebuah program penerapan abstract class dan polymorphism pada bidang
ilmu perpustakaan misal peminjaman buku.
Syarat : dikerjakan berkelompok. Setiap kelompok terdiri dari maksimal 3 orang

Anda mungkin juga menyukai