Edi Casnadi (Email:ed.mobilejava@gmail.com)   2012



              OOP (OBJCET ORIENTED PROGRAMMING)




Software yang berbasis object oriented merupakan suatu software yang memiliki interaksi antar
bagian dalam sebuah sistem dan menggambarkan satu bagian tersebut dalam satu objek. Objek
memiliki sifat/properti dan kemampuan untuk melakukukan suatu tindakan. Contoh objek,
manusia, yang memiliki tangan dan kaki yang dipandang memiliki sifat/properti, sedangkan
memegang dan menendang adalah pekerjaan yang bisa dilakukan (method) misal mobil, mobil
memiliki properti warna mobil, merek, pindu dan ban dll, mobil memiliki method seperti maju,
mundur, menutup pintu dll.

Konsep Berorientasi Object
Dikatakan konsep berorientasi objek yaitu

a. Desain Berorientasi object
Desain berorientasi object adalah sebuah teknik yang memusatkan desain, pada object dan class
berdasarkan pada sekenario dunia nyata. Hal ini menegaskan keadaan (state), behaviour dan interaksi dari
object. Selain itu juga menyediakan manfaat akan kebebasan pengembangan, meningkatkan kualitas,
mempermudah pemeliharaan, mempertinggi kemampuan dalam modifikasi dan meningkatkan
penggunaan kembali software.

b. Class
Class mengizinkan Anda dalam mendeklarasikan tipe data baru. Ia dijalankan sebagai blueprint, dimana
model dari object yang Anda buat berdasarkan pada tipe data baru ini.

c. Object
Sebuah 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. Ini
juga dikenal sebagai instance. Instance dibuat sewaktu, Anda meng-instantiate class menggunakan kata
kunci new. Sebagai contoh yaitu dalam sistem registrasi siswa, disebut sebuah objeknya, yaitu entitas
Student.

d. Atribut
Atribut 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 ke
contoh sistem registrasi siswa, atribut dari sebuah siswa adalah nomor siswa.

e. Method
Sebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atau
prosedur. 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)   2012


f. Constructor
Constructor adalah sebuah tipe khusus dari method yang digunakan untuk membuat dan mengidentifikasi
sebuah object baru. Ingat bahwa constructor bukan member (yaitu atribut, method atau inner class dari
sebuah object).

g. Package
Package menunjuk pada pengelompokkan class dan atau subpackages. Strukturnya dapat disamakan
dengan direktorinya.

h. Enkapsulasi (pembungkusan)
Enkapsulasi menunjuk pada prinsip dari penyembunyian desain atau menerapkan informasi yang tidak
sesuai pada object yang ada.

i. Abstract
Sementara enkapsulasi menyembunyikan detail, sedangkan abstract mengabaikan aspek dari subyek yang
tidak sesuai, dengan tujuan yang ada untuk lebih banyak mengkonsentrasikan yang ada. Dengan kata lain
kelas abstract yaitu kelas yang tidak kongkrit, atau kelas yang tidak dapat dibuat langsung oleh objeknya.

j. Pewarisan
Pewarisan adalah hubungan antara class dimana dalam satu class ada super class atau class induk dari
class yang lain. Pewarisan menunjuk pada properti dan behaviour yang diterima dari nenek moyang dari
class. Ini dikenal juga sebagai hubungan “is - a”. Perhatikan pada hirarki berikut. Sebetulnya contoh
pewarisan ini sudah diterangkan pada bab sebelumnya, tetapi penulis ingin membuat ilustrasi lainnya
yaitu:

                      Makhluk Hidup



  Tumbuhan                                                Hewan

                  Gambar Class pewarisan


Keterangan:
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 pemrograman
yang banyak dipakai orang karena konsep pemrogramannya yang konsisten dengan teori orientasi objek
serta 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-lain
b. Berorientasi objek


Pengenalan 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 browser
e. 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, melainkan
menggunakan method dari interface untuk menghilangkan ketergantungan tersebut.


OOP adalah method pemrograman yang mengikuti konsep berorientasi objek. Yakni memiliki
sesuatu yang sifat encapsulation, inheritance, polimorfisme.


Konsep Dasar OOP di Java
Pemrograman berorientasi objek diciptakan untuk mempermudah pengembangan program
dengan cara mengikuti model yang telah ada dalam kehidupan nyata. Dalam paradigma ini,
sesuai dengan model kehidupan nyata, segala bagian (entiti) dari suatu permasalahan adalah
objek. Objek-objek ini kemudian juga dapat berupa gabungan dari beberapa objek yang lebih
kecil. Sebagai contoh, sebuah mobil. Mobil adalah sebuah objek dalam kehidupan nyata. Namun
mobil 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 dengan
membentuk hubungan antara objek-objek penyusunnya. Begitu juga dengan sebuah program.
Objek besar dapat dibentuk dengan menggabungkan beberapa objek-objek dalam bahasa
pemrograman. Objek-objek tersebut berkomunikasi dengan saling mengirim pesan kepada objek
lain.

Konsep-konsep pemrograman berorientasi objek dalam Java secara umum sama dengan yang
digunakan oleh bahasa-bahasa lain. Jadi kebanyakan konsep yang kita bahas juga terdapat dalam
bahasa selain Java. Namun, terkadang terdapat perbedaan-perbedaan kecil antara penerapan

Pengenalan OOP in Java                                                                            Page 3
Edi Casnadi (Email:ed.mobilejava@gmail.com)   2012



konsep-konsep tersebut dalam masing-masing bahasa. Perbedaan-perbedaan ini juga akan
dijelaskan seiring penjelasan masing-masing konsep.



Pengertian Objek
Baik 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 state
warna, model, tahun pembuatan, kondisi, dll. Sedang behaviour adalah kelakuan dari objek
tersebut, seperti mobil dapat melaju, membelok, membunyikan klakson, dll. Objek menyimpan
statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode.
Dengan penjelasan di atas, dapat disimpulkan bahwa objek adalah bagian software yang
dibentuk dengan variabel-variabel dan metode-metode yang berhubungan dengan variabel
tersebut.
Sebuah objek yang dibentuk dari sebuah kelas biasa disebut instans dalam terminologi OOP.
Artinya objek tersebut adalah wujud nyata dari sebuah kelas.


Kelas
Kelas adalah semacam cetakan, atau template, untuk membuat objek. Ibaratkan sebuah
rancangan rumah yang digunakan untuk membangun ratusan rumah. Rumah yang dibangun
tersebut adalah objek dari kelas rancangan rumah. Hal ini dapat dilakukan karena semua objek
rumah yang dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan semacam
blueprintnya 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 Dunia


Pengenalan 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 Alien


Pewarisan
Pewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Cara membuat
pewarisan 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)   2012




Hasil 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 Dikotil



Polimorfisme
Polimorfisme merupakan suatu objek yang banyak memiliki bentuk. Suatu objek dikatakan
polimorfik jika objek tersebut memiliki interface yang sama tetapi memiliki prilaku yang
berbeda. 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 : Asam



Interface
Secara harfiah interface adalah antarmuka, yaitu suatu alat untuk digunakan benda-benda yang
tidak terhubung secara langsung untuk berinteraksi. Dalam bahasa pemrograman, interface
digunakan oleh berbagai objek yang tidak terhubung untuk saling berinteraksi.

Dengan adanya interface maka beberapa kelas akan dapat menangani interaksi yang sama namun
dengan behaviour yang bisa berbeda. Misalnya beberapa kelas mengimplementasi sebuah
interface yang sama, maka kelas-kelas tersebut dapat menangani interaksi sesuai interface
tersebut, 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)   2012



Hasil output
  IpinUpin berlari = 40 KM/jam
  Tinggi lompatan IpinUpin = 2 M
  Pendidikan IpinUpin = SD
  Harimau berlari = 1,8 KM/jam




Pengenalan OOP in Java                                                            Page 12

More Related Content

PPTX
Pemograman berorientasi obyek kelompok 6
PPTX
Pemograman berorientasi objek
PDF
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
PDF
Modul praktikum PBO
PDF
02. prak.-pemrograman-berorientasi-objek
DOCX
Hardini 3201416015 3_b
PPT
Object Oriented
PDF
TD-635-01-PSBO
Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi objek
Panduan Java sebagai Pemrograman Berorientasi Objek dan Implementasi Thread
Modul praktikum PBO
02. prak.-pemrograman-berorientasi-objek
Hardini 3201416015 3_b
Object Oriented
TD-635-01-PSBO

What's hot (19)

DOCX
Uts pemrograman berbasis obj
PDF
Pengantar Pemrograman Berorientasi Objek
DOCX
Modul oop with java application mauludin
DOCX
Tugas Praktikum Pemrograman Berorientasi Objek
PDF
[RPL2] Pertemuan 1 - Pendahuluan Rekayasa Perangkat Lunak 2
PDF
Abu yanto tugas resume aplinet
PDF
Pertemuan 1 konsep dasar pemrograman berorientasi objek
PPT
08 model oo
PDF
[PBO] Pertemuan 1 (praktik) - Pengenalan java
PDF
Bahan ajar pertemuan 1 Class & Object
DOC
Projek asti(b) revisi
PPT
Apsi 2
PDF
Mi 04.-praktikum-pemrograman-berorientasi-objek
PDF
OOP Dalam Pemrograman Java
DOCX
Resume tentang oop dalam php
PPT
Pertemuan 3-apbo-oo-concept
PDF
Jeni Intro2 Bab01 Review Konsep Dasar Dalam Java
PPTX
PDF
Pem multimedia
Uts pemrograman berbasis obj
Pengantar Pemrograman Berorientasi Objek
Modul oop with java application mauludin
Tugas Praktikum Pemrograman Berorientasi Objek
[RPL2] Pertemuan 1 - Pendahuluan Rekayasa Perangkat Lunak 2
Abu yanto tugas resume aplinet
Pertemuan 1 konsep dasar pemrograman berorientasi objek
08 model oo
[PBO] Pertemuan 1 (praktik) - Pengenalan java
Bahan ajar pertemuan 1 Class & Object
Projek asti(b) revisi
Apsi 2
Mi 04.-praktikum-pemrograman-berorientasi-objek
OOP Dalam Pemrograman Java
Resume tentang oop dalam php
Pertemuan 3-apbo-oo-concept
Jeni Intro2 Bab01 Review Konsep Dasar Dalam Java
Pem multimedia
Ad

Similar to Pengenalan OOP (20)

PPT
T1 - Konsep Pemrograman Berorientasi Obyek.ppt
PPT
PDF
Pbo1 1
PPTX
CCIT OOP Pertemuan 1
PDF
5475 1 review konsep pbo
PDF
Pengenalan Java
PPTX
Pemrograman Berorientasi Objek (PBO).pptx
PDF
Presentation1.pdf
PPTX
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
PPT
fdokumen.com_bab-1-konsep-oop.ppt
PDF
Modul Object Oriented Programming
PDF
Pemrogaman Visual Basic.NET (Modul 4)
PPTX
Pemrograman berorientasi objek dengan java
PDF
Konsep-Object-dan-Class dalam pemrograman.pdf
PPT
Pertemuan 1
PPTX
1. konsep pbo
PPTX
PRAKTIKUM PBO PERTEMUAN 5 (3).pptx
PPTX
Tugas 4
PPTX
Tugas rekweb 4
T1 - Konsep Pemrograman Berorientasi Obyek.ppt
Pbo1 1
CCIT OOP Pertemuan 1
5475 1 review konsep pbo
Pengenalan Java
Pemrograman Berorientasi Objek (PBO).pptx
Presentation1.pdf
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
fdokumen.com_bab-1-konsep-oop.ppt
Modul Object Oriented Programming
Pemrogaman Visual Basic.NET (Modul 4)
Pemrograman berorientasi objek dengan java
Konsep-Object-dan-Class dalam pemrograman.pdf
Pertemuan 1
1. konsep pbo
PRAKTIKUM PBO PERTEMUAN 5 (3).pptx
Tugas 4
Tugas rekweb 4
Ad

More from daffa12 (10)

PDF
Membuat Layout Java dengan netbeans
PDF
Layout Java dengan netbeans
PDF
Dasar Algoritma ECasnadi
PDF
Struktur Algoritma
PDF
Pengenalan Netbeans
PDF
Pengenalan Jcreator
PDF
Pengantar Pemrograman Java
PDF
Panduan instalasi ubuntu 10
PDF
Dasar pembuatan web (html)
PDF
Basic PHP Syntax
Membuat Layout Java dengan netbeans
Layout Java dengan netbeans
Dasar Algoritma ECasnadi
Struktur Algoritma
Pengenalan Netbeans
Pengenalan Jcreator
Pengantar Pemrograman Java
Panduan instalasi ubuntu 10
Dasar pembuatan web (html)
Basic PHP Syntax

Recently uploaded (8)

PPTX
Full - Fase EF - Modul 1 - Mata Pelajaran Koding dan Kecerdasan Artifisial pa...
PPT
Algoritma-Dan-Pemrograman-C---Tipe-Data.ppt
PPTX
Belajar Pemrograman Komputer Dasar Cpp.pptx
PPTX
Materi Informatika Kelas X - Pert 1.pptx
PPTX
Modul Kebekerjaan Modul Kebekerjaan Modul Kebekerjaan
PPTX
Cara Kerja SMS Gateway dan Aplikasi Gratis Berbasis Web
PPTX
Belajar Jaringan Komputer Presentasi dalam Biru Ilustrasi_20250827_093825_000...
PPT
Bab 1 Berpikir Komputasional - Part 1.ppt
Full - Fase EF - Modul 1 - Mata Pelajaran Koding dan Kecerdasan Artifisial pa...
Algoritma-Dan-Pemrograman-C---Tipe-Data.ppt
Belajar Pemrograman Komputer Dasar Cpp.pptx
Materi Informatika Kelas X - Pert 1.pptx
Modul Kebekerjaan Modul Kebekerjaan Modul Kebekerjaan
Cara Kerja SMS Gateway dan Aplikasi Gratis Berbasis Web
Belajar Jaringan Komputer Presentasi dalam Biru Ilustrasi_20250827_093825_000...
Bab 1 Berpikir Komputasional - Part 1.ppt

Pengenalan OOP

  • 1. Edi Casnadi (Email:[email protected]) 2012 OOP (OBJCET ORIENTED PROGRAMMING) Software yang berbasis object oriented merupakan suatu software yang memiliki interaksi antar bagian dalam sebuah sistem dan menggambarkan satu bagian tersebut dalam satu objek. Objek memiliki sifat/properti dan kemampuan untuk melakukukan suatu tindakan. Contoh objek, manusia, yang memiliki tangan dan kaki yang dipandang memiliki sifat/properti, sedangkan memegang dan menendang adalah pekerjaan yang bisa dilakukan (method) misal mobil, mobil memiliki properti warna mobil, merek, pindu dan ban dll, mobil memiliki method seperti maju, mundur, menutup pintu dll. Konsep Berorientasi Object Dikatakan konsep berorientasi objek yaitu a. Desain Berorientasi object Desain berorientasi object adalah sebuah teknik yang memusatkan desain, pada object dan class berdasarkan pada sekenario dunia nyata. Hal ini menegaskan keadaan (state), behaviour dan interaksi dari object. Selain itu juga menyediakan manfaat akan kebebasan pengembangan, meningkatkan kualitas, mempermudah pemeliharaan, mempertinggi kemampuan dalam modifikasi dan meningkatkan penggunaan kembali software. b. Class Class mengizinkan Anda dalam mendeklarasikan tipe data baru. Ia dijalankan sebagai blueprint, dimana model dari object yang Anda buat berdasarkan pada tipe data baru ini. c. Object Sebuah 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. Ini juga dikenal sebagai instance. Instance dibuat sewaktu, Anda meng-instantiate class menggunakan kata kunci new. Sebagai contoh yaitu dalam sistem registrasi siswa, disebut sebuah objeknya, yaitu entitas Student. d. Atribut Atribut 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 ke contoh sistem registrasi siswa, atribut dari sebuah siswa adalah nomor siswa. e. Method Sebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atau prosedur. Sebagai contoh, method yang mungkin tersedia untuk entitas siswa adalah method register, method penjumlahan dari kelas perhitungan. Pengenalan OOP in Java Page 1
  • 2. Edi Casnadi (Email:[email protected]) 2012 f. Constructor Constructor adalah sebuah tipe khusus dari method yang digunakan untuk membuat dan mengidentifikasi sebuah object baru. Ingat bahwa constructor bukan member (yaitu atribut, method atau inner class dari sebuah object). g. Package Package menunjuk pada pengelompokkan class dan atau subpackages. Strukturnya dapat disamakan dengan direktorinya. h. Enkapsulasi (pembungkusan) Enkapsulasi menunjuk pada prinsip dari penyembunyian desain atau menerapkan informasi yang tidak sesuai pada object yang ada. i. Abstract Sementara enkapsulasi menyembunyikan detail, sedangkan abstract mengabaikan aspek dari subyek yang tidak sesuai, dengan tujuan yang ada untuk lebih banyak mengkonsentrasikan yang ada. Dengan kata lain kelas abstract yaitu kelas yang tidak kongkrit, atau kelas yang tidak dapat dibuat langsung oleh objeknya. j. Pewarisan Pewarisan adalah hubungan antara class dimana dalam satu class ada super class atau class induk dari class yang lain. Pewarisan menunjuk pada properti dan behaviour yang diterima dari nenek moyang dari class. Ini dikenal juga sebagai hubungan “is - a”. Perhatikan pada hirarki berikut. Sebetulnya contoh pewarisan ini sudah diterangkan pada bab sebelumnya, tetapi penulis ingin membuat ilustrasi lainnya yaitu: Makhluk Hidup Tumbuhan Hewan Gambar Class pewarisan Keterangan: 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 pemrograman yang banyak dipakai orang karena konsep pemrogramannya yang konsisten dengan teori orientasi objek serta 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-lain b. Berorientasi objek Pengenalan OOP in Java Page 2
  • 3. Edi Casnadi (Email:[email protected]) 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 browser e. 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, melainkan menggunakan method dari interface untuk menghilangkan ketergantungan tersebut. OOP adalah method pemrograman yang mengikuti konsep berorientasi objek. Yakni memiliki sesuatu yang sifat encapsulation, inheritance, polimorfisme. Konsep Dasar OOP di Java Pemrograman berorientasi objek diciptakan untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada dalam kehidupan nyata. Dalam paradigma ini, sesuai dengan model kehidupan nyata, segala bagian (entiti) dari suatu permasalahan adalah objek. Objek-objek ini kemudian juga dapat berupa gabungan dari beberapa objek yang lebih kecil. Sebagai contoh, sebuah mobil. Mobil adalah sebuah objek dalam kehidupan nyata. Namun mobil 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 dengan membentuk hubungan antara objek-objek penyusunnya. Begitu juga dengan sebuah program. Objek besar dapat dibentuk dengan menggabungkan beberapa objek-objek dalam bahasa pemrograman. Objek-objek tersebut berkomunikasi dengan saling mengirim pesan kepada objek lain. Konsep-konsep pemrograman berorientasi objek dalam Java secara umum sama dengan yang digunakan oleh bahasa-bahasa lain. Jadi kebanyakan konsep yang kita bahas juga terdapat dalam bahasa selain Java. Namun, terkadang terdapat perbedaan-perbedaan kecil antara penerapan Pengenalan OOP in Java Page 3
  • 4. Edi Casnadi (Email:[email protected]) 2012 konsep-konsep tersebut dalam masing-masing bahasa. Perbedaan-perbedaan ini juga akan dijelaskan seiring penjelasan masing-masing konsep. Pengertian Objek Baik 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 state warna, model, tahun pembuatan, kondisi, dll. Sedang behaviour adalah kelakuan dari objek tersebut, seperti mobil dapat melaju, membelok, membunyikan klakson, dll. Objek menyimpan statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode. Dengan penjelasan di atas, dapat disimpulkan bahwa objek adalah bagian software yang dibentuk dengan variabel-variabel dan metode-metode yang berhubungan dengan variabel tersebut. Sebuah objek yang dibentuk dari sebuah kelas biasa disebut instans dalam terminologi OOP. Artinya objek tersebut adalah wujud nyata dari sebuah kelas. Kelas Kelas adalah semacam cetakan, atau template, untuk membuat objek. Ibaratkan sebuah rancangan rumah yang digunakan untuk membangun ratusan rumah. Rumah yang dibangun tersebut adalah objek dari kelas rancangan rumah. Hal ini dapat dilakukan karena semua objek rumah yang dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan semacam blueprintnya 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
  • 5. Edi Casnadi (Email:[email protected]) 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 Dunia Pengenalan OOP in Java Page 5
  • 6. Edi Casnadi (Email:[email protected]) 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
  • 7. Edi Casnadi (Email:[email protected]) 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 Alien Pewarisan Pewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Cara membuat pewarisan 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
  • 8. Edi Casnadi (Email:[email protected]) 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
  • 9. Edi Casnadi (Email:[email protected]) 2012 Hasil 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 Dikotil Polimorfisme Polimorfisme merupakan suatu objek yang banyak memiliki bentuk. Suatu objek dikatakan polimorfik jika objek tersebut memiliki interface yang sama tetapi memiliki prilaku yang berbeda. 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
  • 10. Edi Casnadi (Email:[email protected]) 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 : Asam Interface Secara harfiah interface adalah antarmuka, yaitu suatu alat untuk digunakan benda-benda yang tidak terhubung secara langsung untuk berinteraksi. Dalam bahasa pemrograman, interface digunakan oleh berbagai objek yang tidak terhubung untuk saling berinteraksi. Dengan adanya interface maka beberapa kelas akan dapat menangani interaksi yang sama namun dengan behaviour yang bisa berbeda. Misalnya beberapa kelas mengimplementasi sebuah interface yang sama, maka kelas-kelas tersebut dapat menangani interaksi sesuai interface tersebut, 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
  • 11. Edi Casnadi (Email:[email protected]) 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
  • 12. Edi Casnadi (Email:[email protected]) 2012 Hasil output IpinUpin berlari = 40 KM/jam Tinggi lompatan IpinUpin = 2 M Pendidikan IpinUpin = SD Harimau berlari = 1,8 KM/jam Pengenalan OOP in Java Page 12