Jumat, 25 September 2009

overriding

OVERRIDING
overiding adalah definisi ulang dari suatu method dengan menggunakan nama yang sama. singkatnya , bisa terdapat method yang menggunakan nama, return value dan parameter yang sama, namun operasi masing method itu berbeda

contoh code yang sudah di overriding :

class Binatang
{
private var_nama: String;
public function get nama ( ) :String
{
return_nama;
}
private function Binatang(__nama:String) //abstract calss
{
_nama = __nama;
}
private function speak ( )
{
trace(“. . .”) ;
}
}
Seandainya kita dah mengoverride fungsi itu hanya untuk memodifikasi sedikit dari fungsi di superclass...
bisa dilakukan dengan cara:

super.functionName(argument);

nah itu untuk memanggil fungsi super nya.

jadi kira2 gini :

public function test ( )
{
super.test ( ) ;
//tambah script laen2 disini
}

constructor

Assalamu’alaikum wr.wb
Sebenarnya saya juga masih bingung dengan OOP ini,tapi demi tugas kuliah saya coba menguraikan sedikit tentang OOP.hehehe…
Lanjutan dari pembahasan kemarin setelah kelas dan objek pada postingan kali ini, yang akan saya posting adalah constructor dan overriding.

CONSTRUCTOR
Constructor adalah fungsi yang akan dijalankan ketika kita membuat sebuah objek dari suatu kelas, untuk menginisialisasi data yang dimiliki oleh objek. dari method2 yang ada dalam suatu objek, Constructor akan dipanggil paling pertama.
Format umum pendeklarasian dan pendefinisian constructor adalah :
• Nama constructor sama dengan nama class.
• Sebelum itu dapat diberi access modifier untuk mengatur visibility constructor.
Deklarasi Konstruktor :
[modifier] namaclass(parameter1){
Body constructor;
}
[modifier] namaclass(parameter1,parameter2){
Body constructor;
}
[modifier] namaclass(parameter1,parameter2,…,parameterN){
Body constructor;
}
Contoh source code :
public class ContohConstruktor {

int iVar;
/** Creates a new instance of ContohConstructor */
public ContohConstructor(int iVar){
System.out.println("Ditampilkan ketika objek diciptakan");
this.iVar = iVar;
}
public ContohConstructor(int iParam,String sParam){
System.out.println(sParam);
iVar = iParam;
}
int mTambah(){
iVar = iVar + 10;
return iVar;
}
public static void main(String args[]){
ContohConstructor obConst1 = new ContohConstructor(100);
ContohConstructor obConst2 = new ContohConstructor(200,"ditampilkan lagi ketika objek2 diciptakan");
System.out.println("nilai dari parameter inputan untuk constructor objek1 "+obConst1.mTambah());
System.out.println("nilai dari parameter inputan untuk constructor objek2 "+obConst2.mTambah());
}
}
Output :
D:\>java ContohConstructor
Ditampilkan ketika objek diciptakan
ditampilkan lagi ketika objek2 diciptakan
nilai dari parameter inputan untuk constructor objek1 110
nilai dari parameter inputan untuk constructor objek2 210

Jumat, 04 September 2009

artikel OOP

ARTIKEL OOP(Object Oriented Programming)

OOP adalah paradigma pemrograman yang cukup dominan saat ini, karena mampu memberikan solusi kaidah pemrograman modern. Meskipun demikian, bukan berarti bahwa pemrograman prosedural sudah tida layak lagi.
OOP diciptakan karena dirasakan masih adanya keterbatasan pada bahasa pemrograman tradisional. Konsep dari OOP sendiri adalah, semua pemecahan masalah dibagi ke dalam objek. Dalam OOP data dan fungsi-fungsi yang akan mengoperasikannya digabungkan menjadi satu kesatuan yang dapat disebut sebagai objek. Proses perancangan atau desain dalam suatu pemrograman merupakan proses yang tidak terpisah dari proses yang mendahului, yaitu analisis dan proses yang mengikutinya. Pembahasan mengenai orientasi objek tidak akan terlepas dari konsep objek seperti inheritance atau penurunan, encapsulation atau pembungkusan,dan polymorphism atau kebanyakrupaan. Konsep-konsep ini merupakan fundamental dalam orientasi objek yang perlu sekali dipahami serta digunakan dengan baik, dan menghindari penggunaannya yang tidak tepat.

Class dan Objek
Dalam lingkungan program berorientasi objek, pemrogram mendefinisikan class secara statik. Pada saat run-time, class akan diinstantiasi menjadi objek. Ada pun objek yang merupakan instantiasi dari suatu class selalu dapat diacu melalui current objek, apa pun nama instant-nya.
Dapat didefinisikan bahwa class merupakan struktur data dari suatu objek, lebih jelasnya adalah sebuah bentuk dasar atau blueprint yang mendefinisikan variabel method umum pada semua objek dari beberapa macam. Objek sendiri adalah kumpulan variabel dan fungsi yang dihasilkan dari template khusus atau disebut class. objek adalah elemen pada saat run-time yang akan diciptakan, dimanipulasi, dan dihancurkan ketika eksekusi. Ada pun class merupakan definisi statik dari himpunan objek yang mungkin diciptakan sebagai instantiasi dari class. Sederhananya adalah kumpulan objek yang mempunyai atribut sama. Dengan demikian, pada saat run-time maka yang kita miliki adalah objek.
Class biasany dibuat seperti ini
Class nama_classnya{
//berisi sekumpulan fungsi,variabel dan
//statement-statement lainnya
}
Agar class tersebut dpt digunakan maka perlu memiliki atribut-atribut contonya dalam php/c++
//di php
class NamaClass {
var $atribut1;
var $atribut2;
function operasi(){}
}
//di c++
class NamaClass {
public:
int atribut1;
int atribut2;
int operasi(){retun nilai_int}
};
Pada bahasa pemerograman web lain ex. Java file harus disimpan dengan nama class berbeda dengan PHP kita dapat memberikan nama yang tidak mesti sama dengan nama classnya

Inheritance
Inheritance atau pewarisan adalah kalimat yang pasti ada di dalam pemerograman berorientasi objek disebut juga dengan istilah reusable.
Ketika kita menggunakan kembali atau mengganti method dari class yang sudah ada, serta ketika menambahkan field instant dan method baru, maka pada saat itulah Anda bekerja dengan inheritance. Konsep ini merupakan konsep yang fundamental dalam orientasi objek dan harus digunakan dengan baik, ada beberapa macam Inheritance atau pewarisan yang ada di dalam OOP Single Inheritance dan Multple Inheritance.
dalam penggunaan inheritance class Induk akan mewariskan semua atribut yang ia miliki sehingga class bawahnya akan memilki atribut yang sama dengan class induk, bahkan dapat memilki kebabasan untuk memilki atribut berbeda dengan class induknya berikut ilustrasi dalam php
Untuk dapat memahami antara perbedaan pemrograman C++ dan juga OOP, coba lihat contoh source code berikut ini :

dalam C++ :

#include”stdio.h”

float menghitungLuas(float panjang,float lebar);

{

float L;

L=panjang * lebar;

return(L);

}

void main()

{

float panjang,lebar,L;

printf(”panjang =”);

scanf(”%f”,& panjang);

printf(”lebar =”);

scanf(”%f”,& lebar);

L=menghitungluas(panjang,lebar);

printf(”luas=%f\n”,L);

}

dalam OOP :

#include”iostream.h”

class hitung

private:

float panjang;

float lebar;

float L;

public:

void input()

{

cout<<”panjang:”; cin>>panjang;

cout<<”lebar:”; cin>> lebar;

};

void out put()

{

L=panjang*lebar;

cout<<”Luas”,L; }; }; void main() { hitung h; char lagi; do { h.input(); h.output(); cout<<”\n lagi=”; cin>>lagi;

}}