Kamis, 09 Juni 2011

Modul 3 Praktikum PBO : Inheritance

Hi...tmen2, Q blik lg nih byasa membahas tgs praktikum lagi, sekarang modul 3 nih, Qta membahas tentang Inheritance atau biasa kita kenal dengan Pewarisan, Inheritance ini tidak jauh beda kok sama yg namanya Polimorphism, stu lgi juga yg gak jauh beda lagi ma encapsulation, tp itu msh dibahas di modul 4 tnang ja ya,..tggu ja episode berikutnya he...lgsg cekidot aja!



Inheritance adalah yaitu penurunan sifat dari induk class kepada subclass atau anak class. Contohnya kita ambil dari contoh alami yaitu class kucing. Dalam dunia biologi, class kucing adalah hewan bertulang belakang atau vertebrata yang merupakan mamalia pemakan daging atau bertipe karnivora. Didalam Java, penurunan sifat tersebut disebut Inheritance. Penurunan sifat alami tersebut sama dengan penurunan yang terjadi dalam Java sehingga bisa dijadikan contoh inheritance dan bisa dituangkan kedalam Java.

Pada Inheritance terdapat 2 kelas, yaitu kelas Induk dan kelas turunan. Kelas Induk adalah kelas yang dibuat terlebih dahulu yang mewariskan suatu sifat pada kelas lain atau bisa kita sebut superclass. sedangkan, Kelas turunan adalah kelas yang menerima pewarisan atau bisa kita sebut dengan subclass.

Dalam pewarisan menggunaka kata kunci extends dimana itu berarti kelas tersebut merupakan subclass dari kelas lain. Sedangkan kata kunci super itu berarti Untuk memanggil konstruktor kelas induk dari kelas anak, dan harus ditulis di barispertama pada konstruktor kelas anak.

Implementasi pada modul ini yaitu membuat class yang dikelompokkan dalam package kemudian menggunakan package ini dari class lain.
Berikut Source codenya:


/*langkah ke-1: Membuat Class Rumah*/
class Rumah { private String a = " Rumahmewah "; public void info() { System.out.println (" "); System.out.println (" Rumah = "+a); } }


/*langkah ke-2: Membuat Class rumahindah turunan dari Rumah*/
class rumahindah extends Rumah
{
private String b = " tombol alarm ";
public void info()
{
System.out.println (" ");
super.info(); //super mewarisi sifat dari parent dan dirinya sendiri
System.out.println (" rumahindah = "+b);
}
}


/*langkah ke-3: Membuat Main Program dengan Nama Class TipeRumah */
public class TipeRumah
{
public static void main ( String[]args )
{
rumahindah C = new rumahindah();
C.info();
}
}

Hasil Running:

Tugas akhir modul ini yaitu membuat
program java untuk menurunkan 2 buah kelas turunan dari kelas induk yang berupa lingkaran dimana program ini dapat menghitung luas dan keliling lingkaran, dan berikut source codenya:


/*langkah ke-1: Membuat Class Lingkaranku*/
class Lingkaranku
{
public double r;
public double phi=3.14;
public void panjangr()
{
System.out.println("Panjang jari-jari : "+ r);
}
}


/*langkah ke-2: Membuat Class Keliling turunan dari Lingkaranku*/
class Keliling extends Lingkaranku
{
double kel,r2,P;
public void Hitungkel()
{
P=super.phi;
r2=super.r;
kel=2*r2*P;
System.out.println("Keliling lingkaran : "+ kel);
}
}




/*langkah ke-3: Membuat Class Luas turunan dari Lingkaranku*/
class Luas extends Lingkaranku
{
double l,r2,P;
public void Hitungl()
{
P=super.phi;
r2=super.r;
l=2*P*r2*r2;
System.out.println("Luas lingkaran = "+ l);
}
}





/*langkah ke-4: Membuat Main Program dengan Nama Class lingkaran */
public class lingkaran
{
public static void main (String[] args)
{
Keliling kel1=new Keliling();
Luas l1=new Luas();
kel1.r=6;
l1.r=9;

kel1.Hitungkel();
l1.Hitungl();
}
}

Hasil Running:

Pada modul kali ini, saya dapet tugas tambahan kawan, yaitu membuat class Shape. class memiliki dua field String: name dan size. class mempunyai method printShapeInfo, dimana hanya mengeluarkan nilai name dan field size dari object Shape. Juga memiliki method printShapeName dan printShapeSize, dimana mencetak nama dan size dariobject, berturut-turut.

Kemudian Menggunakan pewarisan, buat class Square dengan field yang sama dan method seperti itu dari class Shape. Class ini mempunyai dua tambahan field integer: length dan width. Method printShapeLength dan printShapeWidth yang mencetak panjang dan lebar object yang juga termasuk dalam class ini.

Berikut Source codenya:


/*langkah ke-1: Membuat Class Shape*/
class Shape{

String name, size;

public Shape(String name){
this.name = name;
}

public void printShapeInfo(){
System.out.println("Shape name : "+name);
System.out.println("Shape Size : "+size);
}

public void printShapeName(){
System.out.println("Shape name : "+name);
}

public void printShapeSize(){
System.out.println("Shape size : "+size);
}
}


/*langkah ke-2: Membuat Class Square turunan dari Shape*/
class square extends Shape{

String name, size;
int length, width;

public square(String name){
super(name);
}

public void printShapeInfo(){
super.printShapeInfo();
}

public void printShapeName(){
super.printShapeName();
}

public void printShapeSize(){
super.size = String.valueOf(length*width);
super.printShapeSize();
}

public void printWidth(){
System.out.println("Lebar : "+width);
}

public void printLength(){
System.out.println("Panjang : "+length);
}
}


/*langkah ke-3: Membuat Main Program dengan Nama Class main */
class main{

public static void main (String[] args){


System.out.println("====================================");


square persegi = new square("persegi");

persegi.length = 10;
persegi.width = 8;

persegi.printShapeName();

persegi.printLength();
persegi.printWidth();

persegi.printShapeSize();
System.out.println("\n");
System.out.println("Jadi kesimpulannya..");
persegi.printShapeInfo();
}
}

Hasil Running:


Begitulah kawan mengenai modul ini, semoga bermanfaat y!!!! sampai jumpa di modul berikutna... Gotcha...!!!!

Tidak ada komentar:

Posting Komentar