ABSTRACT CLASS,INTERFACE,INNER CLASS

Pertemuan ke 5

 DASAR TEORI

 A.ABSTRACT CLASS
 Abstract class adalah suatu kelas yang dinyatatakan abstract,umumnya memiliki suatu atau lebih dari abstract method.abstract method adalah suatu method yang memiliki implementasi dan menggunakan modifier abstract.

 B.INTERFACE
 Interface adalah suatu kelas yang berisi method-method tanpa implementasi. Penentu akses public biasa digunakan dengan tujuan agar interface dapat diakses oleh kelas manapun.

 C.INNER CLASS
 Inner class adalah kelas yang disisipkan didalam kelas yang lain.fungsi kelas sisipan ini adalah mendukung suatu proses yang akan dijalankan oleh kelas utamanya.

 LANGKAH LANGKAH PRATIKUM

 A.MEMBUAT PROGRAM MakhlukHidup.java

public abstract class MakhlukHidup {
protected boolean BisaTerbang = false;
protected String Nama;
protected int JlhKaki;
public MakhlukHidup(String Nama1, int JlhKaki1,boolean BisaTerbang1) {
this.Nama = Nama1;
this.JlhKaki = JlhKaki1;
this.BisaTerbang = BisaTerbang1;
}
abstract void status();
public void status() {
System.out.println(“Nama : “+Nama);
System.out.println(“Jumlah Kaki : “+JlhKaki);
System.out.println(“Bisa Terbang : “+BisaTerbang);
}
}

Tidak memiliki output

b. MEMBUAT PROGRAM Manusia.java


public class Manusia extends MakhlukHidup {
Manusia(String nama) {
super(nama, 2, false);
}
public void bernafas() {
System.out.println(“nama+”bernafas dengan menghirup O2”);
}
public statis void main(String[] args) {
Manusia m = new Manusia(“Sayuti”);
m.status();
m.bernafas();
}
}

Outputnya :
Nama : Sayuti
Jumlah kaki : 2
Bisa terbang : false
Sayuti bernafas dengan menghirup O2

c. MEMBUAT PROGRAM Tumbuhan.java


public class Tumbuhan extends MakhlukHidup {
Tumbuhan (String nama) {
super(nama, 0, false);
}
public void bernafas() {
System.out.println(nama+”bernafas dengan menghirup CO2”);
}
public static void main (String[] args) {
Tumbuhan t = new Tumbuhan(”Bayam”);
t.status();
t.bernafs();
}
}

outputnya :
nama : Bayam
jumlah kaki : 0
bisa terbang ; false
Bayam “bernafas dengan menghirup CO2”

d. MEMBUAT PROGRAM Pekerjaan.java


interface Pekerjaan {
public void namaPekerjaan() ;
public void gaji();
}

Program ini tidak menghasilkan output

e. MEMBUAT PROGRAM Sasya.java


public class Sasya extends Manusia implementasi Pekerjaan {
public Sasya() {
super (“Sasya”);
}
public  void namaPekerjaan() {
System.out.println(“Pekerjaan : Sekretaris”);
}
public void gaji() {
System.out.println(“Gaji : Rp. 3.000.000”);
}
public static void main (String[] args) {
Sasya s = new Sasya();
s.status();
s.bernafas();
s.namaPekerjaan();
s.gaji();
}
}

Outputnya :
Nama : Sasya
Jumlah kaki : 2
Bisa terbang : false
Sasya bernafas dengan menghirup O2
Gaji : 3.000.000

f. MEMBUAT PROGRAM JantungManusia.java

class orang {
private int jumlkaki = 2;
public void dengarBunyiJantung() {
Jantung j = new Jantung();
j.bunyiJantung();
}
public void  tahanNafas() {
System.out.println(“Jantung berhenti berdetak!”);
}
//inner class
Class Jantung {
public void bunyiJantung() {
System.out.println(“deg...deg...deg...”);
}
public void istirahat() {
System.out.println(“Silangkan ke “+jumlKaki+” kaki.”);
tahanNafas() ;
}
}
}
Class JantungManusia {
public static void main (String[] args) {
Orang.o = new orang() ;
Orang.Jantung.p = o.new Jantung() ;
o.dengarBunyiJantung() ;
p.istirahat();
}
}

Outputnya:
Deg... Deg. .. Deg.. . 
Silangkan ke 2kaki
Jantung berhenti berdetak

Comments