Thursday, April 19, 2012

Pengertian Inheritance dan Polomorfisme pada Java Beserta Contoh Program

Inheritance (Pewarisan)

Inheritance adalah konsep penting dalam pemrograman berorientasi objek. Bila diterjemahkan secara harafiah, artinya adalah Pewarisan.
Istilah Inheritance akan lebih sering digunakan karena istilah ini sudah dikenal luas dalam dunia pemrograman internasional. Fungsi utama inheritance adalah untuk membuat Class baru dari class yang sudah ada.
Inheritance menjadikan suatu class menjadi lebih reusable dalam arti lebih berguna karena dapat digunakan untuk menghasilkan class-class lain yang lebih spesifik.
Apabila ada suatu class mewarisi class lain maka dalam definisi class harus ditambakan extends. Agar lebih jelasnya berikut adalah contoh programnya.

Listing Program - Hewan.java

public class Hewan{
private String tipe;
    public Hewan(String tipe)
    {
    this.tipe = tipe;
    }
    public String toString ()
    {
        return "ini adalah " +tipe ;
}
public void bersuara (){};
}

Lalu kita mendefinisikan Vlass Ayam dan Kucing yang menjadi turunan Class Hewan.

Listing Program - Ayam.java

public class Ayam extends Hewan
{
private String nama ;
private String jenis ;
public Ayam(String nama)
    {
super ("Ayam");
this.nama = nama;
this.jenis = "Tidak diketahui";
    }
public Ayam (String nama, String jenis)
    {
    super ("Ayam");
this.nama = nama;
this.jenis = jenis;
}
public String toString ()
    {
    return super.toString ()+"\nIni adalah "+jenis+"bernama "+nama;
    }
    public void bersuara()
    {
        System.out.println("Kukuruyuuuk petok petok");
    }
}

Listing Program - Kucing.java

public class Kucing extends Hewan
{
private String nama ;
private String jenis ;
public Kucing(String nama)
    {
super ("Kucing");
this.nama = nama;
this.jenis = "Tidak diketahui";
    }
public Kucing (String nama, String jenis)
    {
    super ("Kucing");
this.nama = nama;
this.jenis = jenis;
}
public String toString ()
    {
    return super.toString ()+"\nJenis kucing ini adalah "+jenis+"bernama "+nama;
    }
    public void bersuara()
    {
        System.out.println("Meooong Meooooong");
    }
}

Polimorfisme 

Kata Polimorfisme memiliki kemampuan untuk memiliki bentuk atau wujud berbeda. Dalam istilah pemrograman, kata ini memiliki arti kemampuan dari suatu variabel referensi objek untuk memiliki aksi berbeda bila method yang sama dipanggil, dimana aks method tergantung dari tipe objeknya.
Berikut adalah contoh programnya.

Listing Program - Polimorfise.java

import java.util.Random;
public class Polimorfisme{
    public static void main (String args[])
    {
        Hewan[] hewannya = {
            new Kucing ("Kiti", "Persia "),
                new Ayam ("Jalu","Buras ")};
            Hewan pilihHewan ;
            Random pilih = new Random ();
            for (int i=0;i<2 ;i++ )
            {
                pilihHewan=
                    hewannya [pilih.nextInt (hewannya.length)];
                System.out.println("\nPilihan Anda:\n"+pilihHewan);
                pilihHewan.bersuara();
            }
    }
}

Setelah Contoh Program Inheritance kita buat. lalu compile masing-masing class. yaitu class Hewan.java , Ayam.java dan Kucing.java. Lalu compile juga class Polimorfisme.java diatas. Terakhir run java Polimorfisme.
Maka Output Programnya akan seperti gambar di bawah ini.

Output Program


Sumber

Buku yang berjudul " Dasar Pemrograman Berorientasi Objek dengan JAVA 2 (JDK.4)"
Karya    : Isak Rickyanto, ST
Penerbit : Penerbit ANDI

Nama : Syarief Yusuf Ibrahim
NPM : 56410783
Kelas : 2IA14

Rekan Kelompok
Nama : Akmal Fikri
NPM : 50410479
Kelas : 2IA14
Link : http://akmal-fikri.blogspot.com/


Tuesday, April 10, 2012

Pengertian Enkapsulasi Beserta Contoh Program

Enkapsulasi (Pengkapsulan)

Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Enkapsulasi juga merupakan suatu mekanisme untuk memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari luar sistem sekaligus menyederhanakan penggunaansystem itu sendiri. Akses ke internal sistem diatur sedemikian rupa melalui seperangkat interface.Contoh kasus sepeda motor tadi, pada sistem pemindahan gigi transmisi, maka pengendara tidak perlutahu detail dari bagaimana proses pemindahan gigi itu dilakukan oleh mesin, cukup tahu bagaimanamenekan gigi transmisi itu. Pedal gigi transmisi yang diinjak pengendara itu merupakan interface (antar muka) pengendara dengan sistem transmisi sepeda motor.Dalam bahasa Java segala sesuatu adalah objek. Setiap baris program yang ditulis  programmer adalah merupakan bagian dari sebuah objek. Programmer juga dapat membangun sebuahobjek yang disusun oleh objek-objek kecil, dimana masing-masing objek yang menyusunnya memiliki fungsi sendiri - sendiri.


Contoh Program
public class manusia {

private String nama;
private String npm;
private String kelas;

public manusia(String n, String npm, String kelas) {
this.nama = n;
this.npm = npm;
this.kelas = kelas;
}
public String tampilkanNama() {
return nama;
}
public String tampilkanNpm() {
return npm;
}
public String tampilkanKelas() {
return kelas;
}
}


Lalu  buat kelas main-nya.

public class betet {

public static void main(String[] args) {
manusia Syarief= new manusia("Syarief", "56410783","2IA14");
System.out.println("Nama \t : " + Syarief.tampilkanNama());
System.out.println("NPM \t : " + Syarief.tampilkanNpm());
System.out.println("Kelas \t : " + Syarief.tampilkanKelas());
System.out.println();
}
}

Pertama kita compile yang manusia.java dan betet.java lalu setelahnya kita run yang betet.java.
Maka outputnya pun akan seperti gambar dibawah ini.

Output Program
 


Sumber

http://www.scribd.com/doc/53355736/Mengenal-Java


Nama : Syarief Yusuf Ibrahim
NPM : 56410783
Kelas : 2IA14

Rekan Kelompok
Nama : Akmal Fikri
NPM : 50410479
Kelas : 2IA14
Link : http://akmal-fikri.blogspot.com/

Wednesday, April 4, 2012

Perbedaan antara Pemrograman Terstruktur dan Berorientasi Objek (OOP)

PEMROGRAMAN TERSTRUKTUR

Munculnya metode pemrograman terstruktur itu pada umumnya digunakan dalam pembangunan sistem berbasis komputer dalam dunia bisnis dan industri saat ini adalah metode analisis dan design terstruktur (Structured Analisys and Design / SSAD). Metode ini diperkenalkan pada tahun 1970, yang merupakan hasil turunan dari pemrograman terstruktur. Metode pengembangan dengan metode terstruktur ini terus diperbaiki sampai akhirnya dapat digunakan dalam dunia nyata. 
Pemrograman Testruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan masalah dalam berbentuk program secara (Top down).
Selain itu pemrograman terstruktur juga harus memperhatikan urutan langkah-langkah perintah secara sistematis, logis, dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami user.

Berikut adalah prinsip-prinsip dari pemrograman terstruktur :

  • Gunakan rancangan pendekatan dari atas ke bawah (top down design).
  • Bagi program ke dalam modul-modul logika yang sejenis,
  • Gunakan sub-program untuk proses-proses sejenis yang sering digunakan.
  • Gunakan pengkodean terstruktur: IF ... THEN, DO ... WHILE dan lain-lainnya.
  • Gunakan nama-nama bermakna (mnemonic names), dan
  • Buat dokumentasi yang akurat dan berarti. 
PEMROGRAMAN BERORIENTASI OBJEK (OOP)

Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya,
Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Konsep dasar dari Pemrograman Berorientasi Objek adalah sebagai berikut :
  • Kelas -Kelas kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. S
  • Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.
  • Abstraksi - Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
  • Enkapsulasi - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi izin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
  • Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim.
  • Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut.