- Get link
- Other Apps
Pada praktikum kali ini membahas tentang
Interface dan Abstract. Interface mendefinisikan method atau konstanta yang
akan di implementasikan pada object lain. Interface memiliki beberapa batasan,
yaitu : semua atribut adalah public, static dan final. Semua method adalah
abstract dan public. Tidak boleh ada deklarasi konstruktor. Abstrak digunakan
untuk method atau class yang belum memiliki implementasi. Abstrak method di
deklarasikan pada abstrak class.
Contoh pengunaan
Inheritance dalam UML :
Contoh penggunaan Abstrack dalam UML :
Contoh
1 Multiple Inheritance dalam Java (Project DemoPaket.java) :
Source Code:
/** Kelas Buku */
(Buku.java)
class Buku {
String judul, pengarang;
long hargaBuku;
public Buku(String judul, String pengarang,
long hargaBuku)
{
this.judul = judul;
this.pengarang = pengarang;
this.hargaBuku = hargaBuku;
}
public void cetakBuku()
{
System.out.println("\nJudul :
"+judul);
System.out.println("\nPengarang :
"+pengarang);
System.out.println("\nHarga Buku :
Rp "+hargaBuku);
System.out.println();
}
}
/**
Interface CD */ (InterfaceCD.java)
interface InterfaceCD
{
void cetakCD();
long getHargaCD();
}
/**
Kelas CD */ (CD.java)
class CD
{
String ukuran;
long hargaCD;
public CD(String ukuran, long hargaCD)
{
this.ukuran = ukuran;
this.hargaCD = hargaCD;
}
public long getHargaCD()
{
return hargaCD;
}
public void cetakCD()
{
System.out.println("Ukuran CD
: "+ukuran);
System.out.println("Harga CD :
Rp "+hargaCD);
System.out.println();
}
}
/** Kelas ChildCD
merupakan turunan dari CD dan
mengimplementasian interface InterfaceCD */(ChildCD.java)
class
ChildCD extends CD implements InterfaceCD
{
public
ChildCD(String ukuran, long hargaCD)
{
super(ukuran,hargaCD);
}
}
/** Kelas paket
merupakan turunan dari Buku dan mengimplementasikan
interface Interface CD */(Paket.java)
class Paket extends Buku implements InterfaceCD {
long hargaPaket;
InterfaceCD
interfaceCD;
public
Paket(String judul, String pengarang, long HargaBuku, String ukuran, long
HargaCD)
{
super(judul,
pengarang, hargaBuku);
interfaceCD =
new ChildCD(ukuran, hargaCD);
}
public void
hitungHargaPaket()
{
hargaPaket =
super.hargaBuku + getHargaCD();
}
public void
cetakCD()
{
interfaceCD.cetakCD();
}
public long
getHargaCD();
{
return (interface
CD.getHargaCD());
}
public void
cetakPaket()
{
super.cetakBuku();
cetakCD();
System.out.println("Harga paket Buku dan CD: Rp "+ hargaPaket
+ "/n");
}
}
(Main.java)
class DemoPaket {
public static void
main(String[] args) {
Paket a = new
Paket("Pemrograman Berorientasi Objek", "Benyamin Langgu
Sinaga", 60000, "700 MB" 50000);
a.hitungHargaPaket();
a.cetakPaket();
}
}
Contoh
2 Polimorfisme dalam Java (Project CobaPolimorpic.java) :
(Nama
– nama Binatang)
Source Code:
(Binatang.java)
public abstract class Binatang {
Binatang(String jenis)
{
this.jenis = jenis;
}
protected abstract void suara();//Deklarasi, tidak didefinisikan
public String toString()
{
return "Seekor " +jenis;
}
private String jenis;
}
(Burung.java)
public class Burung extends Binatang
{
Burung(String nama)
{
super("Burung");
this.nama = nama;
}
public void suara()
{
System.out.println("berkicau");
}
public String toString()
{
return super.toString()+ "
"+nama;
}
private String nama;
}
(Kucing.java)
public class Kucing extends Binatang {
Kucing(String nama)
{
super("Kucing");
this.nama=nama;
}
public void suara()
{
System.out.println("mengeong");
}
public String toString()
{
return super.toString()+ " " +nama;
}
private String nama;
}
(Anjing.java)
public class Anjing extends Binatang {
Anjing(String nama)
{
super("Anjing");
this.nama=nama;
}
public void suara()
{
System.out.println("menggonggong");
}
public String toString()
{
return super.toString()+" "+nama;
}
private String nama;
}
(Kambing.java)
public class Kambing extends Binatang{
Kambing(String nama)
{
super("Kambing");
this.nama=nama;
}
public void suara()
{
System.out.println("mengembik");
}
public String toString()
{
return super.toString()+" "+nama;
}
private String nama;
}
(CobaPolimorpic.java)
import java.util.Random;
public class CobaPolimorpic {
public static void main(String[] args) {
Binatang[] peliharaanku = (new Burung( "Kakak Tua"),
new
Kambing("Etawa"),
new Anjing("Kintamani"),
new
Kucing("Anggora"));
Binatang kesayangan;
Random pilihan = new Random();
//memilih secara acak
kesayangan = peliharaanku(pilihan.nextInt(peliharaanku.length);
// mengacak bilangan dari 0
sampailength-1 atau (i-1).
System.out.println("Binatang Kesayangan anda : " +kesayangan
);
System.out.println("Suaranya : " );
kesayangan.suara();
}
}
- Get link
- Other Apps
Comments
Post a Comment