Rabu, 15 Desember 2010

Pertemuan X(Sepuluh)


INFORMATION HIDING,INHERITANCE,ENCAPSULATION DAN POLYMORPHISM
1.       Inheritance
Inheritance adalah Penurunan atribut dan method dari suatu class super/kelas induk ke sub class/kelas anak.
Deklarasi:
[modifier] class NamaSubclass extends NamaKelassuper {
Class body;
}

Keterangan:Kata kunci extends digunakan untuk menyatakan Pewarisan
Pada pendeklarasian diatas terdapat  modifier,Modifier merupakan sifat yang dimiliki oleh sebuah atribut/class.

2.      Encapsulation
Encapsulation atau pengkapsulan adalah suatu kemampuan dalam pemrograman berorientasi objek untuk menyembunyikan atribut dan method suatu objek dari objek lain.
Tujuan Encapsulation:Menyembunyikan atribut/method dari suatu objek ke objek lain.
Pengkapsulan dilakukan dengan cara memberikan modifier”Private” pada suatu method dan variable.
Method yang diawali dengan kata “set” merupakan Method yang digunakan untuk memberikan nilai pada suatu atribut yang bersifat private.sedangkan Method yang digunakan untuk mengambil nilai dari suatu atribut yang bersifat  private biasanya diawali dengan kata”get” .


Contoh:
Source 1. superclass.java

public class superclass{
public superclass() {
 System.out.println("Ini Konstruktor milik superclass");
 }
 public void methodsuperclass() {
    System.out.println("Ini method milik superclass");
    }
    }
-          Simpan dengan nama superclass.java
      Tekan Ctrl+1 untuk mengkompile
Hasil setelah di compile:
-          Selanjutnya tekan Ctrl+2 untuk menjalankan program
Outputnya:

Keterangan kode program dari class superclass:
public class superclass{   //merupakan nama class yaitu”superclass” yang merupakan class anak.
public superclass() {  //merupakan perintah untuk menampilkan objek superclass
 System.out.println("Ini Konstruktor milik superclass");
//digunakan untuk menampilkan teks” ini       konstruktor milik superclass
 }
 public void methodsuperclass() { // merupakan method dengan nama  superclass
 System.out.println("Ini method milik superclass"); // perintah untuk menampilkan teks”ini method milik superclass”
}
}
Source 2.subclass.java
public class subclass extends superclass {
public subclass() {
super();
}
public void methodsubclass() {
super.methodsuperclass();
}
}
-          Simpan dengan nama subclass.java
      Tekan Ctrl+1 untuk mengkompile
Hasil setelah di compile:
-          Selanjutnya tekan Ctrl+2 untuk menjalankan program
Outputnya:

Seperti yang kita ketahui sebelumnya Method merupakan tingkah laku dari suatu objek maka Dari contoh diatas dapat kita lihat ada 2 method yaitu:
1.      Method superclass
2.      Method subclass

Pembahasan dari kode program subclass:
public class subclass extends superclass { //maksudnya subclass merupakan turunan dari superclass
public subclass() { // merupakan method/ konstruktor dari subclass
super(); // digunakan untuk memanggil konstruktor dari class induk(kelas utamanya)
}
public void methodsubclass() { // nama dari sebuah method yaitu method subclass
super.methodsuperclass(); // memanggil konstruktor dari method superclass
}
}
Source 3.demoinheritance.java
public class demoinheritance{
public static void main(String[] args){
subclass sc = new subclass();
sc.methodsubclass();
}
}

-          Simpan dengan nama demoinheritance.java
      Tekan Ctrl+1 untuk mengkompile
Hasil setelah di compile:

-          Selanjutnya tekan Ctrl+2 untuk menjalankan program
Outputnya:

Pembahasan dari kode program demoinheritance:
public class demoinheritance{ // merupakan nama class dengan nama demoinheritance
public static void main(String[] args){ //merupakan class induk(kelas utama) karena memiliki void main
subclass sc = new subclass(); //membuat objek baru dengan nama  sc dari kelas” subclass” dan memanggil konstruktor subclass
sc.methodsubclass(); //menuju method-method subclass pada objek sc
}
}
Source 4.persegi.java
public class persegi {
private double panjang;   //atribut yang di sembunyikan
private double lebar;    //atribut yang di sembunyikan
private double tinggi;   //atribut yang di sembunyikan

public persegi(){
panjang=0;
lebar=0;
}

private double luas(double p,double l){
//method yang di sembunyikan
return p*l;
}

public void setpanjang(double panjang1){
//method-method pengakses
this.panjang=panjang1;
}
 public void setlebar(double lebar1){
this.lebar=lebar1;
}
 public double getpanjang(){
return panjang;
}
 public double getlebar(){
return lebar;
}
 public double getluas(){
return luas(panjang, lebar);
}
}

-          Simpan dengan nama persegi.java
      Tekan Ctrl+1 untuk mengkompile
Hasil setelah di compile:


-          Selanjutnya tekan Ctrl+2 untuk menjalankan program
Outputnya: 


Pembahasan kode program dari class persegi:
public class persegi { //merupakan nama kelas dengan nama persegi
private double panjang;   //atribut yang di sembunyikan
private double lebar;    //atribut yang di sembunyikan
private double tinggi;   //atribut yang di sembunyikan
maksudnya:panjang,lebar,tinggi dideklarasikan dengan tipe data double
public persegi(){
panjang=0; // nilai panjang=0
lebar=0; //nilai lebar=0
}
private double luas(double p,double l){ //private dipakai agar program tersebut tidak diketahui dengan sembarng objek.
//method yang di sembunyikan
return p*l;
}

public void setpanjang(double panjang1){ //setpanjang digunakan untuk memberikan nilai panjang
//method-method pengakses
this.panjang=panjang1; //maksudnya:berikan nilai ke atribut panjang=panjang1 yang nilai awalnya o berubah menjadi 10
}
public void setlebar(double lebar1){ //setlebar digunakan untuk memberikan nilai lebar
this.lebar=lebar1; //maksudnya:berikan nilai ke atribut lebar=lebar1 yang nilai awalnya o berubah menjadi 20
}
public double getpanjang(){ //getpanjang digunakan untuk mengambil nilai panjang
return panjang;
}

public double getlebar(){  //getlebar digunakan untuk mengambil nilai lebar
return lebar;
}
public double getluas(){   //getluas digunakan untuk mengambil nilai luas
return luas(panjang, lebar);
}
}

Source 5.mainpersegi.java
public class mainpersegi{ //merupakan nama kelas dengan nama mainpersegi
public static void main(String[] args){ // merupakan class induk(kelas utama) karena memiliki void main
persegi pg = new persegi//membuat objek baru dengan nama  pg dari kelas” persegi” dan memanggil konstruktor persegi
pg.setpanjang(10); // memberikan nilai panjang dari objek baru pg dengan nilai 10
pg.setlebar(20); // memberikan nilai lebar dari objek baru pg dengan nilai 20
System.out.println("panjang: "+pg.getpanjang()); //menampilkan nilai panjang dengan mengambil nilai panjang dari objek pg
System.out.println("lebar: "+pg.getlebar());//menampilkan  nilai lebar dengan mengambil nilai lebar dari objek pg
System.out.println("luas: "+pg.getluas());//menampilkan nilai luas dengan mengambil nilai luas dari objek pg
}
}

Selanjutnya tekan Ctrl+1 untuk Kompile Program
Hasil dari Kompile program:




Selanjutnya tekan Ctrl+2 untuk menjalankan program
Hasil dari running Program:


























































Tidak ada komentar:

Posting Komentar