Minggu, 08 April 2012

Contoh Program Sederhana OOP

Pemograman Berorientasi Objek (OOP) dan Contoh Pemrograman Sederhana dengan Menggunakan Pemrograman Java
Terdapat 3 pilar utama dalam pemrograman yang berorientasi obyek, ketiga pilar tersebut yaitu:.
1. Encapsulation (Pengkapsulan)
Encapsulation (pengkapsulan), merupakan langkah pengkombinasian data dan berbagai metode yang berhubungan dengannya. Hasil dari kombinasi yang dlakukan inilah yang disebut obyek (Object) yang merupakan tipe data baru.
Atau Encapsulation adalah penyatuan beberapa atribut (field) dan fungsi (method) kedalam object :
Contoh:
Kelas Main :
public class Main{
public static void main(String[] args){
karnivora harimau = new karnivora(“harimau”,”mamalia”);
herbivora gajah = new herbivora(“gajah”,”mamalia”);
karnivora hiu = new karnivora(“hiu”,”mamalia”);
herbivora kambing = new herbivora(“kambing”,”mamalia”);
herbivora ayam = new herbivora(“ayam”,”aves”);
System.out.println(harimau.getDetails() );
System.out.println(gajah.getDetails() );
System.out.println(hiu.getDetails() );
System.out.println(kambing.getDetails() );
System.out.println(ayam.getDetails() );
}
}
Kelas Hewan :
public class hewan {
public String nama;
public String jenis;
public hewan (String n, String j) {
nama = n;
jenis = j ;
}
public String getDetails() {
return “Name : “+nama+, “Jenis : “+jenis ;
}
public void makan () {
}
}
Kelas Karnivora :
public class karnivora extends hewan {
public karnivora (String nama, String jenis) {
super (nama, jenis);
}
public String berburu () {
return “berburu” ;
}
}
Kelas Herbivora :
public class herbivora extends hewan {
public herbivora (String nama, String jenis) {
super (nama, jenis);
}
public String berkembangbiak() {
}
}

OUTPUT :
init:
deps-jar:
compile:
run:
Nama :harimau ,Jenis :mamalia
Nama :gajah ,Jenis :mamalia
Nama :hiu ,Jenis :mamalia
Nama :kambing ,Jenis :mamalia
Nama :ayam ,Jenis :aves
BUILD SUCCESSFUL (total time: 0 seconds)
2. 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 SmartMahsiswa 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(“Kudiantoro Widianto”);
mhs.printNim();
mhs.printNama();
}
}
kemudian jalankan
C:\>javac SmartMahasiswa.java
C:\>javac Main.java
C:\>java Main
Kontruksi objek mahasiswa
Nim:1400012
Nama:Kudiantoro Widianto
C:\>
3. 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(“Kudiantoro Widianto”);
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:Kudiantoro Widianto
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.

1 komentar:

satriawan al-bayani mengatakan...

mana ciri khas lainnya..? di tugas ku ada 5 lima ciri khas OOP,,,,yang 2 lg mana..?

Poskan Komentar