Just another Blog

“share knowledge”

Archive for the ‘Oop’ Category

abstract & interface

Posted by zmhazmi on November 29, 2008

abstract class biasanya digunakan untuk pembuatan kerangka class lain yang mempunyai kemiripan, alasan dibuat suatu class abstract adalah karena implementasi dari setiap method nya belum diketahui (masih abstraksi).

contoh nya adl kelas MahlukHidup yang merupakan abstraksi dari mahluk hidup (manusia , hewan dan tumbuhan) maka dibuatkan kelas abstrak MahlukHidup yang hanya mendefinisikan data dan metode umum yang berlaku bagi mahluk hidup tsb.

Baca Selengkapnya

Posted in Oop | Leave a Comment »

inheritance, encapsulation, polymorphism

Posted by zmhazmi on November 16, 2008

Inheritance adalah proses pewarisan dari suatu kelas kepada kelas yang lain. pewarisan disini artinya dapat mewariskan data dan method dari superclass kepada subclass nya. dengan begitu data maupun method dapat dituliskan sekali saja untuk kemudian digunakan oleh semua subclass nya.

Baca Selengkapnya

Posted in Oop | Leave a Comment »

kilas balik sebentar …

Posted by zmhazmi on November 13, 2008

dari contoh simple code kelas & objek ditemukan beberapa variabel dan metode. seperti diketahui bahwa Variabel adalah kondisi /karakteristik yang dimiliki oleh suatu objek atau juga berfungsi untuk menampung data-data.
sedangkan Metode adalah prosedur/fungsi yang dimiliki oleh objek, yang mempresentasikan behaviour dari objek ybs maka itu metode akan mengolah /mengubah variabel2 yang ada di dalam objek sesuai dengan operasi yang ditentukan. kemungkinan yang terjadi dari penggunaan metode yaitu mengembalikan suatu nilai yang dicirikan oleh keyword return dan tidak mengembalikan nilai ditandai dengan keyword void.

dari simple code yang ada, variabel2 bisa dilihat di merk,warna,tahun. sedangkan metode nya antara lain melaju() yang mengembalikan nilai String.

terdapat juga method accessor yang berguna untuk membaca suatu variabel private, contoh dari code yang ada adalah :

public String getTipe() {
     return tipe;
}

lalu ditambahkan modifier private dalam variabel tipe menjadi : private String tipe;

hal ini dilakukan agar variabel/data tidak dapat langsung diakses oleh object kapan pun itu. dengan method accessor tsb barulah dapat diakses variabel tipe yg mempunyai akses private.

juga terdapat method mutator yang berguna untuk mengubah isi dari suatu variabel private yang ada, contoh dari code yang ada adl :

public void setTipe(String tipe) {
     this.tipe = tipe;
}

method mutator tidak menghasilkan return value akan tetapi terdapat parameter yang akan digunakan pada method tsb. diatas juga terdapat keyword this antara lain digunakan untuk meng-akses variabel instans dari masing-masing objek. method mutator mereferensikan nilai parameter ke variabel instans dari object yang ada.

contoh penggunaannya terdapat di motor.setTipe(“Sport”); objek motor men-set variabel String, lalu untuk dapat membacanya digunakan System.out.println(“Tipe Motor : ” + motor.getTipe());

modifier diatas bersifat optional, hanya untuk menunjukan hak akses yang berlaku pada variabel/kelas/metode yang ada. tiga modifier yang dikenal untuk mengatur aksesibilitas antara lain :

public : dapat diakses terhadap semua kelas, dalam package yang sama maupun berbeda.

private : hanya dapat diakses dari kelas itu sendiri. contoh : tambahkan private ke variabel merk menjadi private String merk; maka akan terjadi error ketika akan menjalankan code yang ada.

protected : dapat diakses dari kelas yang sama, package yang sama, subkelas dari suatu kelas.

Posted in Oop | Leave a Comment »

simple code kelas & objek

Posted by zmhazmi on November 9, 2008

Menyambung pengertian Kelas & Objek, berikut contoh sederhana penciptaan objek dari suatu kelas.

Anggaplah disini terdapat Kelas Motor yang berisi variabel2 & metode2 yang akan dimiliki oleh objek seperti berikut :

public class Motor {
     String merk;
     String warna;
     String tipe;
     int tahun;

     public String melaju() {
          return "Melaju";
     }

     public String getTipe() {
          return tipe;
     }

     public void setTipe(String tipe) {
          this.tipe = tipe;
     }

}

Anggaplah kita juga mempunyai satu Kelas lagi yaitu Kelas TestMotor yang berfungsi untuk mengisi dan menampilkan nilai variabel dari objek yang diciptakan.

public class TestMotor {

     public static void main(String[] args) {
          Motor motor = new Motor();
          motor.merk = "Kawasaki Ninja";
          motor.warna = "Merah";
          motor.tahun = 2000;
          motor.setTipe("Sport");

          System.out.println("Demo Objek dan Kelas");

          System.out.println("Merk Motor : " + motor.merk);
          System.out.println("Warna Motor : " + motor.warna);
          System.out.println("Tipe Motor : " + motor.getTipe());
          System.out.println("Tahun Pembuatan : " + motor.tahun);
          System.out.println("Metode yang dilakukan : " + motor.melaju());

     }

}

Pada Kelas TestMotor diatas, Objek motor dibentuk dari Kelas Motor. proses pembentukan objek dari suatu kelas disini biasa disebut instansiasi. maka dapat dikatakan bahwa objek adalah instans dari suatu kelas.

kemudian dilakukan pengisian nilai variabel yang telah didefinisikan dalam Kelas Motor, untuk kemudian dapat ditampilkan di layar console. maka akan tertampil sebagai berikut :

Demo Objek dan Kelas
Merk Motor : Kawasaki Ninja
Warna Motor : Merah
Tipe Motor : Sport
Tahun Pembuatan : 2000
Metode yang dilakukan : Melaju

Posted in Oop | Leave a Comment »

kelas sebagai template objek

Posted by zmhazmi on November 8, 2008

Setelah melihat cara pandang objek, tentunya sy pribadi berfikir apakah objek motor langsung bisa terbentuk tanpa adanya suatu template/rancangan ?

dari berbagai macam tipe,merk,warna dsb tentunya ada satu muara agar objek motor tsb dapat diciptakan.  urutan pertama tentunya kita harus memiliki semacam blue print ataupun rancangan dari objek motor yang akan dibuat. rancangan tersebut dapat berisi data-data dan fungsi yang dimiliki oleh objek yang bersangkutan.

blue print/cetakan tersebut lah yang dinamakan Kelas. misalkan pabrik motor mempunyai rancangan pembuatan sepeda motor, dikarenakan objek motor tersebut mempunyai karakteristik yang sama seperti warna,merk,dapat melaju dsb Maka dapat dibuatkan kelas blue print rancangan motor.

misalkan Kelas Motor, tentunya harus mendefinisikan variabel/data serta metode-metode yang akan dimiliki oleh object dari kelas tersebut. dengan begitu, maka dapat dilakukan penciptaan objek sebanyak yang diinginkan. contohnya dari kelas rancangan motor dapat tercipta objek motor 4 tak, motor 2 tak, bebek, matic dsb dengan tetap membawa karakteristik yang sama.

Posted in Oop | Leave a Comment »

cara pandang objek

Posted by zmhazmi on November 8, 2008

Dalam lingkungan kecil keseharian, dapat dijumpai mobil,motor yang terparkir di rumah; kucing persia, handphone yang dipakai , televisi yang ditonton yang merupakan wujud dari benda nyata. Kemudian dapat dijumpai pula tagihan telpon,listrik; rekening bank dsb yang merupakan wujud benda tak nyata.

Kesemua benda/segala bagian (entitas) yang disebut diatas baik yang nyata maupun tidak nyata tsb merupakan Objek. setiap objek tsb memiliki karakteristik masing-masing.

Jika dihubungkan dengan dunia pemrograman, maka objek-objek tsb merupakan unit kecil pemrograman yang memiliki karakteristik state(keadaan) dan behaviour(kelakuan) masing-masing. Seperti pada objek motor memiliki state merk,warna,tahun produksi dan mempunyai behaviour melaju,mengerem,dll.

Namun sebenarnya objek-objek tersebut dapat pula terbentuk dari penggabungan objek-objek yang lebih kecil lainnya seperti knalpot,pedal gas,mesin merupakan objek-objek kecil yang membentuk objek yang lebih besar dalam hal ini adalah objek motor.

jika dihubungkan kembali dengan dunia pemrograman, objek-objek tersebut menyimpan state nya dalam variabel/data/property

variabel/data sendiri merupakan kondisi yang dimiliki oleh suatu objek, artinya objek motor mempunyai data merk,warna dan juga tahun produksi.

sedangkan untuk mempresentasikan behaviour nya dengan menggunakan metode, artinya objek motor tersebut dapat melaju,mengerem dsb dengan mengimplementasikan metode.

dari sudut pandang pribadi : kita dapat memodelkan objek-objek yang ditemui dalam keseharian ke lingkungan pemrograman. atau apapun harus kita pandang sebagai objek agar mudah mengimplementasikan ke ruang lingkup bahasa pemrograman yang akan dipakai.

Posted in Oop | Leave a Comment »