Minggu, 01 November 2015

Inheritance pada java | Naufal24

Inheritance
(Pewarisan)
Object Oriented Programming with JAVA

Pengertian dasar inheritance

  • Inheritance (Pewarisan) merupakan salah satu dari tiga konsep dasar OOP(Object oriented programming). 
  • Konsep inheritance ini mengadopsi dunia real dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat mempunyai class turunan. 
  • Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.
Pewarisan merupakan mekanisme/cara membuat kelas baru dari kelas yang sudah ada.
Kelas yang sudah ada = superclass/parent class
Kelas turunan = subclass Suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class


Deklarasi inheritance
•Dengan menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class-nya.
•Kata kunci extends tersebut memberi
tahu kompiler Java bahwa kita ingin melakukan perluasan class.
Contoh Syntax:


Class A menjadi parent class
Class B menjadi child class
Class B mewarisi semua member class yang ada pada class A.

Class B extends A{
//.......
}
Class C extends B{
//.....
}
Semua class di dalam Java  merupakan subclass dari class super induk yang bernama Object.  Misalnya saja terdapat sebuah class sederhana :

public class A {
//…
}

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

public class A extends Object {



}

Menerapkan inheritance
Kita baru perlu menerapkan inheritance pada saat kita jumpai ada suatu class yang dapat diperluas dari class lain. Contoh :

Misal terdapat class Pegawai

public class Pegawai {
public String nama;
public double gaji;
}

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

Class Super
public class Manajer extends Pegawai {
public String departemen;
}


Single Inheritance

•Konsep inheritance yang ada di Java hanya memperkenankan adanya single inheritance, yaitu suatu sublass hanya dapat mempunyai satu parent class. Dengan kata lain, suatu class hanya dapat meng-extend satu class saja.
•Jika dibutuhkan adanya multiple inheritance (satu class memiliki lebih dari satu parent class) maka solusinya dapat menggunakan interface.

Multilevel Inheritance

  • Konsep inheritance yang ada di Java juga memperkenankan adanya multilevel inheritance
  • Konsep multilevel inheritance memperbolehkan suatu subclass mempunyai subclass lagi. 

Jumat, 30 Oktober 2015

Pointer di dalam bahasa java | Naufal24

Pengertian Pointer
Variabel yang menyimpan reference (alamat memori) untuk variabel lain disebut pointer
Dalam C dan C++ pointer adalah suatu tipe data tersendiri
Tipe data pointer digunakan untuk menyimpan alamat memori suatu variabel atau bisa dikatakan ‘menunjuk suatu variabel’

Pointer adalah sebuah variabel yang isi datanya adalah alamat memori atau variabel lain. Sehingga pointer dapat juga disebut sebagai variabel alamat (address variable).

Deklarasi pointer

Untuk mendeklarasikan sebuah pointer, perintah dasarnya adalah :

Typedata *namavariabel;
Contoh :

unsigned int *my_pointer;


Deklarasi di atas menyatakan deklarasi variabel my_pointer yang bertipe pointer untuk variabel tipe unsigned int (pointer to unsigned int).Variable my_pointer digunakan untuk menyimpan suatu alamat memori suatu variabel bertipe unsigned int. Deklarasi suatu pointer diawali dengan tanda ‘*’ sebelum nama variabelnya

Dereference operator
Selain untuk deklarasi pointer, tanda ‘*’ juga berfungsi untuk dereference operator 
Dereference adalah kebalikan reference
•Reference = operasi melihat alamat suatu variabel
•Dereference = operasi untuk melihat isi dari suatu alamat memori

Contoh : a = *my_pointer;
 Artinya: my_pointer berisi suatu alamat memori, dan variabel a akan berisi data yg tersimpan di alamat memori tsb.

Pointer pada java diganti dengan istilah references
Mekanisme references di dalam Java juga jauh berbeda, dimana kita tidak perlu mengalokasikan wadah bagi references, dan kita juga tidak perlu membuang references yang tidak terpakai.

Garbage Collector(Pemulung)
Setiap saat Anda membuat suatu objek di Java, objek itu akan masuk ke dalam area yang disebut The Heap. Jika Anda membuat sebuah objek, maka Java otomatis akan menyediakan ruang memori di heap sebesar yang objek tersebut butuhkan.

JVM (Java Virtual Machine)
JVM membuang objek yang tidak lagi terpakai dari heap dan java lah yang mengatur memori ketika melihat adanya objek yang tidak terpakai, maka objek tersebut akan diumpankan kepada Garbage Collector
inilah program ditulis dalam bahasa Java