• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Pengenalan OOP
 

Pengenalan OOP

on

  • 1,844 views

Mengenalkan OOP in Java

Mengenalkan OOP in Java

Statistics

Views

Total Views
1,844
Views on SlideShare
1,835
Embed Views
9

Actions

Likes
1
Downloads
153
Comments
0

1 Embed 9

http://rachmat-saleh.blogspot.com 9

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Pengenalan OOP Pengenalan OOP Document Transcript

    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 OOP (OBJCET ORIENTED PROGRAMMING)Software yang berbasis object oriented merupakan suatu software yang memiliki interaksi antarbagian dalam sebuah sistem dan menggambarkan satu bagian tersebut dalam satu objek. Objekmemiliki sifat/properti dan kemampuan untuk melakukukan suatu tindakan. Contoh objek,manusia, yang memiliki tangan dan kaki yang dipandang memiliki sifat/properti, sedangkanmemegang dan menendang adalah pekerjaan yang bisa dilakukan (method) misal mobil, mobilmemiliki properti warna mobil, merek, pindu dan ban dll, mobil memiliki method seperti maju,mundur, menutup pintu dll.Konsep Berorientasi ObjectDikatakan konsep berorientasi objek yaitua. Desain Berorientasi objectDesain berorientasi object adalah sebuah teknik yang memusatkan desain, pada object dan classberdasarkan pada sekenario dunia nyata. Hal ini menegaskan keadaan (state), behaviour dan interaksi dariobject. Selain itu juga menyediakan manfaat akan kebebasan pengembangan, meningkatkan kualitas,mempermudah pemeliharaan, mempertinggi kemampuan dalam modifikasi dan meningkatkanpenggunaan kembali software.b. ClassClass mengizinkan Anda dalam mendeklarasikan tipe data baru. Ia dijalankan sebagai blueprint, dimanamodel dari object yang Anda buat berdasarkan pada tipe data baru ini.c. ObjectSebuah object adalah sebuah entitas yang memiliki keadaan, behaviour dan identitas yang yang tugasnya,dirumuskan dalam suatu lingkup masalah dengan baik. Inilah instance sebenarnya dari sebuah class. Inijuga dikenal sebagai instance. Instance dibuat sewaktu, Anda meng-instantiate class menggunakan katakunci new. Sebagai contoh yaitu dalam sistem registrasi siswa, disebut sebuah objeknya, yaitu entitasStudent.d. AtributAtribut menunjuk pada elemen data dari sebuah object. Atribut menyimpan informasi tentang object.Dikenal juga sebagai member data, variabel instance, properti atau sebuah field data. Kembali lagi kecontoh sistem registrasi siswa, atribut dari sebuah siswa adalah nomor siswa.e. MethodSebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atauprosedur. Sebagai contoh, method yang mungkin tersedia untuk entitas siswa adalah method register,method penjumlahan dari kelas perhitungan.Pengenalan OOP in Java Page 1
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012f. ConstructorConstructor adalah sebuah tipe khusus dari method yang digunakan untuk membuat dan mengidentifikasisebuah object baru. Ingat bahwa constructor bukan member (yaitu atribut, method atau inner class darisebuah object).g. PackagePackage menunjuk pada pengelompokkan class dan atau subpackages. Strukturnya dapat disamakandengan direktorinya.h. Enkapsulasi (pembungkusan)Enkapsulasi menunjuk pada prinsip dari penyembunyian desain atau menerapkan informasi yang tidaksesuai pada object yang ada.i. AbstractSementara enkapsulasi menyembunyikan detail, sedangkan abstract mengabaikan aspek dari subyek yangtidak sesuai, dengan tujuan yang ada untuk lebih banyak mengkonsentrasikan yang ada. Dengan kata lainkelas abstract yaitu kelas yang tidak kongkrit, atau kelas yang tidak dapat dibuat langsung oleh objeknya.j. PewarisanPewarisan adalah hubungan antara class dimana dalam satu class ada super class atau class induk dariclass yang lain. Pewarisan menunjuk pada properti dan behaviour yang diterima dari nenek moyang dariclass. Ini dikenal juga sebagai hubungan “is - a”. Perhatikan pada hirarki berikut. Sebetulnya contohpewarisan ini sudah diterangkan pada bab sebelumnya, tetapi penulis ingin membuat ilustrasi lainnyayaitu: Makhluk Hidup Tumbuhan Hewan Gambar Class pewarisanKeterangan:Makhluk hidup merupakan kelas utama, yang memiliki kelas bawahnya, seperti tumbuhan dan hewan.Kelas hewan dan tumbuhan yang akan mewarisi dari sifat-sifat kelas utama yaitu kelas makhluk hidup.Menurut informasi dari Sun Microsystems, bahasa pemrograman Java meruapakan bahasa pemrogramanyang banyak dipakai orang karena konsep pemrogramannya yang konsisten dengan teori orientasi objekserta aman untuk digunakan, maka Java memiliki beberapa keunggulan yaitu:a. Karakteristik sederhana Pengembangan Java berdasarkan bahasa pemrograman C++, tetapi beberapa fitur dihilangkan, seperti  Java tidak mendukung tipe data struct, union, dan pointer  Java tidak mendukung typedef atau #define  Java tidak mendukung multiple inheritance  Java menangani argument command-line berbeda.  Dan lain-lainb. Berorientasi objekPengenalan OOP in Java Page 2
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 Pemrograman berorientasi objek, berdasarkan pemodelan dari dunia nyata yang disebut objek. Objek mempunyai karakteristik dari objek lain yang menurunkannya, sehingga programmer dapat membuat method hanya sekali untuk pekerjaan tertentu.c. Terdistribusi Java banyak pustaka kelas untuk komunikasi menggunakan protokol internet TCP/IP, termasuk protokol HTTP dan FTP.d. Interpreter Compiler Java menterjemahkan file sumber Java menjadi bytecode yang dapat dijalankan pada semua komputer yang menjalankan interpreter Java atau browsere. Kokoh dan Aman Perangkat lunak yang kuat, tidak mudah menghentikan program, karena terdapat bug atau kesalahan logika didalamnya. Aman karena Java diguanakan dalam berbagai multiplatform, maka keamanan sangat diperhatikan.f. Arsitektur Netral Compiler Java membuat bytecode yang mengirim ke browser dan diterjemahkan oleh browser yang mempunyai interpreter Java.g. Performance tinggi Kompilasi Java termasuk kebebasan menterjemahkan byte-code ke kode mesin pada platform yang ada. Hal ini memberikan efisiensi yang sama seperti kompilasi dimana dan pemrosesan secara tradisional.h. Multithreaded Java merupakan bahasa pemrogaraman yang dapat digunakan untuk membuat aplikasi dimana, beberapa event berlangsung pada saat yang sama.i. Dinamis.Tidak membutuhkan kompilasi kembali jika suatu kelas dirubah, tetapi Java tidak, melainkanmenggunakan method dari interface untuk menghilangkan ketergantungan tersebut.OOP adalah method pemrograman yang mengikuti konsep berorientasi objek. Yakni memilikisesuatu yang sifat encapsulation, inheritance, polimorfisme.Konsep Dasar OOP di JavaPemrograman berorientasi objek diciptakan untuk mempermudah pengembangan programdengan cara mengikuti model yang telah ada dalam kehidupan nyata. Dalam paradigma ini,sesuai dengan model kehidupan nyata, segala bagian (entiti) dari suatu permasalahan adalahobjek. Objek-objek ini kemudian juga dapat berupa gabungan dari beberapa objek yang lebihkecil. Sebagai contoh, sebuah mobil. Mobil adalah sebuah objek dalam kehidupan nyata. Namunmobil sendiri terbentuk dari beberapa objek yang lebih kecil seperti roda ban, mesin, jok, dll.Mobil sebagai objek yang merupakan gabungan dari objek yang lebih kecil dibentuk denganmembentuk hubungan antara objek-objek penyusunnya. Begitu juga dengan sebuah program.Objek besar dapat dibentuk dengan menggabungkan beberapa objek-objek dalam bahasapemrograman. Objek-objek tersebut berkomunikasi dengan saling mengirim pesan kepada objeklain.Konsep-konsep pemrograman berorientasi objek dalam Java secara umum sama dengan yangdigunakan oleh bahasa-bahasa lain. Jadi kebanyakan konsep yang kita bahas juga terdapat dalambahasa selain Java. Namun, terkadang terdapat perbedaan-perbedaan kecil antara penerapanPengenalan OOP in Java Page 3
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012konsep-konsep tersebut dalam masing-masing bahasa. Perbedaan-perbedaan ini juga akandijelaskan seiring penjelasan masing-masing konsep.Pengertian ObjekBaik dalam dunia nyata atau dalam sebuah program, sebuah objek memiliki dua karakteristik,yaitu state dan behaviour. State adalah keadaan dari sebuah objek, seperti mobil memiliki statewarna, model, tahun pembuatan, kondisi, dll. Sedang behaviour adalah kelakuan dari objektersebut, seperti mobil dapat melaju, membelok, membunyikan klakson, dll. Objek menyimpanstatenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode.Dengan penjelasan di atas, dapat disimpulkan bahwa objek adalah bagian software yangdibentuk dengan variabel-variabel dan metode-metode yang berhubungan dengan variabeltersebut.Sebuah objek yang dibentuk dari sebuah kelas biasa disebut instans dalam terminologi OOP.Artinya objek tersebut adalah wujud nyata dari sebuah kelas.KelasKelas adalah semacam cetakan, atau template, untuk membuat objek. Ibaratkan sebuahrancangan rumah yang digunakan untuk membangun ratusan rumah. Rumah yang dibanguntersebut adalah objek dari kelas rancangan rumah. Hal ini dapat dilakukan karena semua objekrumah yang dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan semacamblueprintnya atau templatenya.Cara membuat class dalam NetBeans, yaitu Buka editor Netbeans Kemudian langkah berikutnya dengan membuat suatu project baru, sebagai berikut: klik dari menu File > New Project, sehingga akan tampil sebagai berikut:Pengenalan OOP in Java Page 4
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 Gambar Membuat Project Baru Setelah membuat projek baru, maka langkah selanjutnya dengan cara mengklik menu File >New File, maka akan muncul dialog sebagai berikut: Gambar Membuat Class DuniaPengenalan OOP in Java Page 5
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 Setelah tekan tombol Finish, maka akan tampil gambar berikut: Gambar Hasil Pembuatan Class Dunia Lengkapilah Listing program di atas dengan coding seperi berikut: package objek; /** * Hak Cipta BCC */ public class Dunia { //kelas utama public static void main(String[] args){ //program utama Tumbuhan tmb= new Tumbuhan(); Manusia mns= new Manusia(); Binatang bnt = new Binatang(); Alien al = new Alien(); tmb.Sayuran(); mns.Bule(); bnt.Kambing(); al.Zatura(); } } class Tumbuhan { public void Sayuran(){ System.out.println("Ini kelas Tubuhan"); System.out.println("Ini method Sayuran dalam kelas Tubuhan"); } }Pengenalan OOP in Java Page 6
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 class Manusia { public void Bule(){ System.out.println("Ini kelas Manusia"); System.out.println("Ini method Sayuran dalam kelas Manusia"); } } class Binatang { public void Kambing(){ System.out.println("Ini kelas Kambing"); System.out.println("Ini method Kambing dalam kelas Kambing"); } } class Alien { public void Zatura(){ System.out.println("Ini kelas Zatura "); System.out.println("Ini method Zatura dalam kelas Alien"); } }Hasil output Ini kelas Tubuhan Ini method Sayuran dalam kelas Tubuhan Ini kelas Manusia Ini method Sayuran dalam kelas Manusia Ini kelas Kambing Ini method Kambing dalam kelas Kambing Ini kelas Zatura Ini method Zatura dalam kelas AlienPewarisanPewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Cara membuatpewarisan yaitu: package objek; /** * *Hak cipta oleh BCC */ public class PewarisPohon { String Akar; String Daun, Batang; PewarisPohon(){ Akar="Sebuah Akar Bercabang";Pengenalan OOP in Java Page 7
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 Daun="Sebuah Daun Lebar"; Batang="Sebuah Batang Dikotil"; } public static void main(String[] args){ new Mangga(); new Kelapa(); new Cemara(); } } class Mangga extends PewarisPohon{ Mangga(){ Akar="Sebuah Akar Bercabang"; Daun="Dengan Daun Lebar dan warna hijau"; Batang="Termasuk Batang Dikotil"; //menampilkan data System.out.println("INI POHON MANGGA"); System.out.println("Memiliki : " + Akar); System.out.println("Memiliki : " + Daun); System.out.println("Memiliki : " + Batang); } } class Kelapa extends PewarisPohon{ Kelapa(){ Akar="Sebuah Akar Serabut"; Daun="Dengan Daun panjang dan tidak lebar"; Batang="Termasuk Batang Monokotil"; //menampilkan data System.out.println("INI POHON KELAPA"); System.out.println("Memiliki : " + Akar); System.out.println("Memiliki : " + Daun); System.out.println("Memiliki : " + Batang); } } class Cemara extends PewarisPohon{ Cemara(){ Akar="Sebuah Akar Bercabang"; Daun="Dengan seperi jarum"; Batang="Termasuk Batang Dikotil"; //menampilkan data System.out.println("INI POHON CEMARA"); System.out.println("Memiliki : " + Akar); System.out.println("Memiliki : Daun Berjarum "); System.out.println("Memiliki : " + Batang); } }Pengenalan OOP in Java Page 8
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012Hasil output INI POHON MANGGA Memiliki : Sebuah Akar Bercabang Memiliki : Dengan Daun Lebar dan warna hijau Memiliki : Termasuk Batang Dikotil INI POHON KELAPA Memiliki : Sebuah Akar Serabut Memiliki : Dengan Daun panjang dan tidak lebar Memiliki : Termasuk Batang Monokotil INI POHON CEMARA Memiliki : Sebuah Akar Bercabang Memiliki : Daun Berjarum Memiliki : Termasuk Batang DikotilPolimorfismePolimorfisme merupakan suatu objek yang banyak memiliki bentuk. Suatu objek dikatakanpolimorfik jika objek tersebut memiliki interface yang sama tetapi memiliki prilaku yangberbeda. berikut bagaimana cara untuk membuat polimorfisme, yaitu: package objek; /** * Copyright by BCC */ public class PoliBuah { public static void main(String[] args){ new Durian(); new Jeruk(); } } abstract class Buah { String Rasa; abstract public void setRasa(String vRasa); } class Durian extends Buah{ Durian(){ Rasa="Manis"; setRasa(Rasa); } public void setRasa(String vRasa){ Rasa=vRasa; System.out.println("Rasa Durian : " + Rasa); }Pengenalan OOP in Java Page 9
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 } class Jeruk extends Buah{ Jeruk(){ Rasa="Asam"; setRasa(Rasa); } public void setRasa(String vRasa){ Rasa=vRasa; System.out.println("Rasa Jeruk : " + Rasa); } }Hasil output Rasa Durian : Manis Rasa Jeruk : AsamInterfaceSecara harfiah interface adalah antarmuka, yaitu suatu alat untuk digunakan benda-benda yangtidak terhubung secara langsung untuk berinteraksi. Dalam bahasa pemrograman, interfacedigunakan oleh berbagai objek yang tidak terhubung untuk saling berinteraksi.Dengan adanya interface maka beberapa kelas akan dapat menangani interaksi yang sama namundengan behaviour yang bisa berbeda. Misalnya beberapa kelas mengimplementasi sebuahinterface yang sama, maka kelas-kelas tersebut dapat menangani interaksi sesuai interfacetersebut, namun tiap kelas dapat memiliki implementasi yang berbeda-beda. package objek; class ContohInterface { public static void main (String args[]) { man.berlari("40 KM/jam"); man.melompat("2 M"); man.pergiSekolah("SD"); man.tampil(); Harimau kc = new Harimau(); kc.berlari("1,8 KM/jam"); kc.tampil(); } } interface Lari{ public void berlari(String nLari);Pengenalan OOP in Java Page 10
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012 } interface Lompat{ public void melompat(String nLompat); } interface Sekolah{ public void pergiSekolah(String nSekolah); } class Harimau implements Lari{ String kecepatanLari; public Harimau(){ } public void berlari(String nLari){ kecepatanLari = nLari; } public void tampil(){ System.out.println("Harimau berlari = "+ kecepatanLari); } } class IpinUpin implements Lari, Lompat, Sekolah{ String kecepatanLari; String tinggiLompat; String pendidikan; public IpinUpin(){ } public void berlari(String nLari){ kecepatanLari = nLari; } public void melompat(String nLompat){ tinggiLompat = nLompat; } public void pergiSekolah(String nSekolah){ pendidikan=nSekolah; } public void tampil(){ System.out.println("IpinUpin berlari = "+ kecepatanLari); System.out.println("Tinggi lompatan IpinUpin = "+ tinggiLompat); System.out.println("Pendidikan IpinUpin = "+ pendidikan); } }Pengenalan OOP in Java Page 11
    • Edi Casnadi (Email:ed.mobilejava@gmail.com) 2012Hasil output IpinUpin berlari = 40 KM/jam Tinggi lompatan IpinUpin = 2 M Pendidikan IpinUpin = SD Harimau berlari = 1,8 KM/jamPengenalan OOP in Java Page 12