Saturday, October 31, 2015

Inheritance (Pewarisan) Pada Java

A. PENGERTIAN PEWARISAN (INHERITANCE)

  

Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.

  • Keyword untuk pewarisan : extends

Suatu class yang mempunyai class turunan dinamakan parent class atau base class. 
Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class. Suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class.
Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent class-nya.
Jika kelas induk merupakan turunan dari kelas lain, maka data dan method yang berasal dari kelas tersebut akan ikut diwariskan pula kepada kelas anaknya.

Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan.

B. DEKLARASI PEWARISAN (INHERITANCE)
Deklarasi yang digunakan adalah dengan menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin melakukan perluasan class.

public class B extends A { … }

Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.

public class A extends Object { … }

C. KAPAN KITA MENERAPKAN INHERITANCE?
Kita baru perlu menerapkan inheritance pada saat kita jumpai ada suatu class
yang dapat diperluas dari class lain.

Misal terdapat class Pegawai public class Pegawai { public String nama; public double gaji; }
Misal terdapat class Manager public class Manajer { public String nama; public double gaji;public String departemen; }

Dari 2 buah class diatas, kita lihat class Manajer mempunyai data member yang identik sama dengan class Pegawai, hanya saja ada tambahan data member departemen.

Sebenarnya yang terjadi disana adalah class Manajer merupakan perluasan dari class Pegawai dengan tambahan data member departemen.

Disini perlu memakai konsep inheritance, sehingga class Manajer dapat kita tuliskan seperti berikut :

public class Manajer extends Pegawai { public String departemen; }

D. KEUNTUNGAN INHERITANCE

1. Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.

2. Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.

E. ISTILAH INHERITANCE

1. Extends
Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass.

2. Superclass 
Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak.

3. Subclass
Subclass adalah class anak atau turunan secara hirarki dari superclass.

4. Super 
Keyword ini digunakan untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass.

5. Methode Overriding dan Overloading
Method overriding adalah mendefinisikan kembali method yang sama, baik nama method maupun signature atau parameter yang diperlukan dalam subclass.
Method overloading adalah mendefinisikan method yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama.

F.   Jenis-Jenis Inheritance
1. Single Inheritance (Pewarisan Tunggal)
Pewarisan yang jumlah kelas dasarnya atau superclassnya tunggal, tetapi bisa memiliki subclassnya lebih dari satu.
Java hanya bisa menggunakan single inheritance.



2. Multiple Inheritance (Pewarisan Jamak)
Kelas yang diturunkan lebih dari satu class yang berbeda atau superclassnya lebih dari satu.
Java tidak mendukung multiple inheritance.

3. Virtual Multiple Inheritance (Pewarisan Jamak Maya)
Kelas yang diturunkan lebih dari satu class yang berbeda hanya saja beberapa kelas dasar merupakan kelas turunan dari kelas dasar yang sama.


Contoh Inheritance :

Animal.java:
 







Bird.java:









Dog.java:










MainClass.java




Sumber:
http://mungjava.blogspot.co.id/2009/05/memahami-konsep-inheritance-pewarisan.html
http://examples.javacodegeeks.com/java-basics/java-inheritance-example/
http://www.slideshare.net/Goenz/inheritance




Friday, October 30, 2015

Pointer pada Java

Pointer adalah variabel yang menyimpan reference (alamat memori) untuk variabel lain.

Contoh Program :

1. class subclass extends superclass 
                     { 
                         String s = "This is the sub class"; 
                         public static void main(String[] args) 
                              { 
                                 new subclass(); 
                              } 
                                  void display(String s) 
                             { 
                                         System.out.println("Subclass message: "+s); 
                                     } 
                                 subclass() 
                                   { 
                                       display(this.s); 
                                               display(super.s); 
                                               this.display(s); 
                                       super.display(s); 
                                   } 
                     } 
2. class superclass 
           { 
               String s= "This is the super class"; 
               void display(String s) 
                  { 
                      System.out.println("Superclass Message: "+s); 
                  } 
           } 
                   
Output Program :

Wednesday, March 4, 2015

Puisi "Cinta"


Cinta
Karya: Kahlil Gibran


Kenapa kita menutup mata ketika kita tidur?
Ketika kita menangis?
Ketika kita membayangkan?
Itu karena hal terindah di dunia tdk terlihat

Ketika kita menemukan seseorang yang
Keunikannya sejalan dengan kita, kita bergabung
Dengannya dan jatuh ke dalam suatu keanehan
Serupa yang dinamakan cinta.

Ada hal2 yang tidak ingin kita lepaskan,
seseorang yang tidak ingin kita tinggalkan,
tapi melepaskan bukan akhir dari dunia,
melainkan suatu awal kehidupan baru,
kebahagiaan ada untuk mereka yang tersakiti,
mereka yang telah dan tengah mencari dan
mereka yang telah mencoba.
Karena merekalah yang bisa menghargai betapa
pentingnya orang yang telah menyentuh kehidupan
mereka.


Cinta yang sebenarnya adalah ketika kamu
menitikan air mata dan masih peduli terhadapnya,
adalah ketika dia tidak memperdulikanmu dan
kamu masih menunggunya dengan setia.


Adalah ketika di mulai mencintai orang lain dan
kamu masih bisa tersenyum dan berkata
” aku turut berbahagia untukmu ”

Apabila cinta tidak bertemu bebaskan dirimu,
biarkan hatimu kembalike alam bebas lagi.
Kau mungkin menyadari, bahwa kamu menemukan
cinta dan kehilangannya, tapi ketika cinta itu mati
kamu tidak perlu mati bersama cinta itu.

Orang yang bahagia bukanlah mereka yang selalu
mendapatkan keinginannya, melainkan mereka
yang tetap bangkit ketika mereka jatuh, entah
bagaimana dalam perjalanan kehidupan.
Kamu belajar lebih banyak tentang dirimu sendiri
dan menyadari bahwa penyesalan tidak
seharusnya ada, cintamu akan tetap di hatinya
sebagai penghargaan abadi atas pilihan2 hidup
yang telah kau buat.

Teman sejati, mengerti ketika kamu berkata ” Aku
lupa ….”
menunggu selamanya ketika kamu berkata ”
Tunggu sebentar ”
tetap tinggal ketika kamu berkata ” Tinggalkan aku
sendiri ”
mebuka pintu meski kamu belum mengetuk dan
belum berkata ” Bolehkah saya masuk ? ”
mencintai juga bukanlah bagaimana kamu
melupakan dia bila ia berbuat kesalahan,
melainkan bagaimana kamu memaafkan.

Bukanlah bagaimana kamu mendengarkan,
melainkan bagaimana kamu mengerti.
Bukanlah apa yang kamu lihat, melainkan apa
yang kamu rasa,
bukanlah bagaimana kamu melepaskan melainkan
bagaimana kamu bertahan.

Mungkin akan tiba saatnya di mana kamu harus
berhenti mencintai seseorang, bukan karena orang
itu berhenti mencintai kita melainkan karena kita
menyadari bahwa orang iu akan lebih berbahagia
apabila kita melepaskannya.

Kadangkala, orang yang paling mencintaimu adalah
orang yang tak pernah menyatakan cinta
kepadamu, karena takut kau berpaling dan
memberi jarak, dan bila suatu saat pergi, kau akan
menyadari bahwa dia adalah cinta yang tak kau
sadari