22 April 2010

Istilah .Net Framework

Override

1. Mendefinisikan method dengan nama sama pada class yang berbeda.
2. Konsep dapat di manfaatkan dalam beberapa kasus inheritance, di mana menginginkan penamaan method dengan nama sama namunberbeda dalam impelementasinya.

Contohnya :

class Kendaraan {

…………..

public String getJenis() {

System.out.println(“Harga BBM turun”);

}

}

class Motor extends Kendaraan {

…………..

public String getJenis() {

System.out.println(“Harga BBM premium 4000 rupiah”);

}

}

NB dari contoh program di atas dapat di jelaskan sebagai berikut:

* class motor mengextends class kendaraan
* class motor melakukan override method di kendaraan namun berbeda implementasi

Kesimpulan:

* Override method merupakan method yang sama persis dengan method yang sudah ada di super kelasnya, biasanya perbedaannya adalah pada implementasi (program body)
* Overidding tidak bisa dilakukan dalam kelas itu sendiri
* Jadi Overidding kerat kaitannya dengan inheritance (pewarisan)
Ciri method itu di override adalah : adanya nama method yang sama di kelas anak dengan nama method di kelas induknya.



Overload

1. mendefinisikan method dengan nama sama dalam satu class.
2. Konsep sering di gunakan dalam penggunaan constructor.

Dalam pemrograman Java, mungkin kita seringkali menginginkan pembuatan lebih dari satu method dengan nama sama tetapi dengan daftar parameter yang berbeda. Ini disebut overloading method. Overloading method digunakan untuk melayani sifat polimorfik Java. Contoh berikut ini adalah versi class Point yang menggunakan overloading method untuk menghasilkan konstuktor alternatif yang membuat beberapa nilai default untuk koordinat x dan y.

Contoh programnya :

class Point {

int x;

int y;

Point(int x, int y) {

this.x = x;

this.y = y;

}

Point() {

x = -1;

y = -1;

}

}

class PointCreateAlt {

public static void main(String args[] ) {

Point p = new Point();

System.out.println(“x = ” + p.x +” y =” + p.y);

}

}



Enkapsulasi Java
Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni :
• Information hiding.
• Interface to access data.
Information hiding
Sebelumnya kita dapat mengakses anggota class baik berupa atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah 'public'. Kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya adalah hanya dengan memberikan akses kontrol 'private' ketika mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.
Interface to access data
Jika kita telah melakukan information hiding terhadap suatu atribut pada suatu class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.

Istilah .Net Framework

Override Method

Istilah override itu mirip kayak ditumpuki/ditindih, karena logikanya method getName yang terdapat pada class Person seharusnya diwariskan / dimiliki juga oleh class Student, akan tetapi isi code method getName di class Student berbeda dengan isi
code method getName di class person (istilahnya method getName class Person dioverride oleh method getName class Student).
Saat kita memanggil method getName class Student maka method getName class Person otomatis ditumpuki/ditindih.

Ciri method itu di override adalah : adanya nama method yang sama di kelas anak dengan nama method di kelas induknya.


Inheritance (Pewarisan)

inheritance (penurunan sifat / pewarisan)
, ini merupakan ciri khas dari OOP yang tidak terdapat pada pemrograman prosedural gaya lama. Dalam hal ini, inheritance bertujuan membentuk obyek baru yang memiliki sifat sama atau mirip dengan obyek yang sudah ada sebelumnya (pewarisan). Obyek turunan dapat digunakan membetuk obyek turunan lagi dan seterusnya. Setiap perubahan pada obyek induk, juga akan mengubah obyek turunannya. Susunan obyek induk dengan obyek turunannya disebut dengan hirarki obyek.

Atau Inheritance yaitu pewarisan sifat-sifat suatu object kepada object turunannya.

Contoh program javanya :

Simpan dengan nama SmartMahasiswa.java

Public class SmartMahasiswa extends Mahasiswa{

}

Simpan dengan nama Main.java

public class Main{

public static void main(String[] args]) {

SmartMahasiswa mhs = new SmartMahasiswa();

mhs.setNim(“1400012”);

mhs.setNama(“Ari”);

mhs.printNim();

mhs.printNama();

}

}

kemudian jalankan

C:\>javac SmartMahasiswa.java

C:\>javac Main.java

C:\>java Main

Kontruksi objek mahasiswa

Nim:1400012

Nama:Ari

C:\>



2. Polymorphic (Banyak bentuk)

Polymorphism, suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.

Atau Polymorphic dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.

Contoh program java nya :

Simpan dengan nama CoolMahasiswa.java

public class CoolMahasiswa extends Mahasiswa{

public void printNama(){

System.out.println(“Hallo, saya Mahasiswa yg cool n oke”);

Super.printNama();

}

}

Simpan dengan nama Main.java

public class Main{

public static void main(String[] args]) {

CooltMahasiswa mhs = new CoolMahasiswa();

mhs.setNim(“1400012”);

mhs.setNama(“Ari”);

mhs.printNim();

mhs.printNama();

}

}

Kemudian compile dan run.

C:\>javac CoolMahasiswa.java

C:\>javac Main.java

C:\>java Main

Kontruksi objek mahasiswa

Nim:1400012

Hallo, saya Mahasiswa yg cool n oke

Nama:Ari

C:\>

Terlihat bahwa disini kita mengoverride method printNama(), dengan menambahkan beberapa teks tambahan, sehingga method printNama(), pada class CoolMahasiswa, memiliki perilaku yang berbeda dengan class Mahasiswa.
 
© 2011 Brankas Tugas | Except as noted, this content is licensed under Creative Commons Attribution 2.5.
For details and restrictions, see the Content License | Recode by Ardhiansyam | Based on Android Developers Blog