Kamis, 08 November 2012

tugas pertemuan V


TUGAS PERTEMUAN KE V

MATERI

A.    ABSTRACT CLASS
Java menyediakan suatu mekanisme yang memungkinkan suatu metode ditentukan dari dalam kelass tetapi tidak disertai defenisinya. Metode ini dikenal dengan nama metode abstract, sedangkan kelassnya dinamakan kelas abstract.
Abstrsct class adalah suatu kelas yang dinyatakan abstract, umumnya memiliki suatu atau lebih abstract method. Abstract method adalah suatu method yang memiliki implementasi dan menggunakan modifier abstract. Abstract class biasanya dijadikan parent/super class dari kelas-kelas yang dapat membuat objek, abstarct class  tidak dapat diintasikan.
Defenisi kelas diletakkan dalam kelas turunan. Dalam hal ini setiap kelass turunan harus mendefenisikan metode-metode yang tergolong sebagai metode abstract.


B.     INTERFACE
Interface adalah suatu kelas yang berisi method-method tanpa implementasi, namun tanpa implementasi, namun tanpa modifier abstrsct, apabila suatu interface memiliki atribut, maka atributnya akan berlaku sebagai konstanta. Interface mempunyai kelas. Perbedaanya, kata ,kunci interface mmenggantikan kedudukan kata kunci class.
Penentu akses public biasa digunakan sebagai tujuan agar interface dapat diakses oleh kelas manapun. Jika tak ada penentu akses public, interface hanya dapat diakses olah kelas-kelas yang berada dalam paket yang sama.


C.    INNER CLASS
Inner class adalah kelas yang disisipkan didalm kelas yang lain. Fungsi kelas sisipan ini adalah mendukung suatu proses yang akan dijalankan oleh kelas utamanya.
Inner class bersifat bersarang terhadap kelas-kelas utamanya.











Contoh programnya.
1.       Program MakhlukHidup

Public abstact class makhlukm hidup {
                Protected boolean BisaTerbang =false;
                Protected   string Nama;
Portected int JlhKaki;

Public Makhluk hidup(String Nama, int JlhKaki1,boolean BisaTerbang){
                This. Nama = Nama1;
                This.JlhKaki1;
                This.BisaTerbang = BisaTerbang 1;
}
Abstract void bernafas();
Public  void  status() {
System.out.println (“Nama         : “ +Nama);
System.out.println(“Jumlah kaki               :   “+JlhKaki);
System.out.println(“Bisa terbang             :  “ +BisaTerbang);
}
}

Keteranganya:
1.       Kelas ini disebut kelas abstract
2.       Memiliki 2 method
a.       Abstract void bernafas();
b.    Public  void  status() {
       3.    System.out.println (“Nama           : “ +Nama); perintah ini disebut sebagai implementasi
       4.    System.out.println(“Jumlah kaki                :   “+JlhKaki);  program ini dipanggil dr method satatus.


2 .  Public class manusia Extends mahklukHidup
public class Manusia extends MakhlukHidup {
                Manusia(String nama) {
                                super(nama, 2, false);
                }
                public void bernafas() {
                                System.out.println(Nama+" bernafas dengan menghirup O2");
                }
                public static void main(String [] args) {
                                Manusia m = new Manusia("Sayuti");
                                m.status();
                                m.bernafas();
                }
}




Keterangan :

1.        public class Manusia extends MakhlukHidup { ini disebut class pewarisan dari mahluk hidup
2.       Manusia m = new Manusia("Sayuti"); maenggil konstruktor manusia
3.       m.status(); ini memanggil method status
4.       outputnya dari fungsi utama.

3.       Public  class Tumbuhan extends MakhlukHidup {

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.bernafas();
                }
}


Keterangannya:
1.       Memilik fungsi utama
2.       Hasil outputnya sbb



4         Interface pekerjaan

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

Keterangan
1.       public void namaPekerjaan();  Method tanpa implementasi
2.       public void gaji(); sebagai method


5.        Public class sasya extend manusia Implements Pekerjaan
public class Sasya extends Manusia implements 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();
                }
}

Keterangan:
1.       Super memanggil konstruktor
2.       public void gaji() { ini sebagai method
3.       public static void main(String[] args) {  ini sebagai kelas utama.
4.       Sasya s = new Sasya(); ini meanggil konstruktor sasya
5.       s.status();  memanggil method status
6.       s.bernafas(); ini memanggil method dari kelas sasya.
7.       s.namaPekerjaan();
8.       s.gaji()
9.       outputnya:

6.       class orang

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("Silahkan 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();
                }
}

Keterangan:
1.       System.out.println("jantung berhenti berdetak!"); sebagai output
2.       System.out.println("deg...deg...deg..."); ini sebagai output.
3.       Orang o = new Orang(); ini memanggil kontruktor
4.       Orang.Jantung p = o.new Jantung(); ini membuat objek dengan p
5.       Outputnya: