konsep pbo

15

Click here to load reader

Upload: yedija-samgar-pebriyanto

Post on 19-Dec-2015

9 views

Category:

Documents


2 download

DESCRIPTION

konsep pbo

TRANSCRIPT

Page 1: konsep pbo

Konsep PBOPemrograman Berorientasi ObjekDalam Java

Page 2: konsep pbo

Abstraksi

Pemrograman prosedural Pemrograman yang berorientasi kerja, ct : mengolah

data, mencetak dokumen.

Pemrograman objek Berorientasi benda, ct : mahasiswa, dosen, karyawan.

Selanjutnya kerja dilakukan oleh objek-objek tersebut.

Misal : dosen mengajar, mahasiswa ujian, karyawankerja.

Page 3: konsep pbo

Dalam pemrograman prosedural, yang menjadi orientasi adalah bagaimanamelakukan KERJA

Seperti mengubah data input, supayamendapatkan outputan.

Sehingga kita memecah program menjadi beberapa bagian berupaperintah-perintah yang lebih kecil.

Page 4: konsep pbo

Sedangkan dalam PBO, yang diutamakan adalaH berbasis OBJEK.

Kita memodelkan sistem menjadiobjek-objek.

Selanjutnya, hubungan antar objeksatu dengan objek yang lain.

Ct : hubungan antara dosen danmahasiswa. Dosen mengajarmahasiswa, dan mahasiswa memilihdosen untuk kuliahnya.

Page 5: konsep pbo

PemrogramanBerorientasi Objek

Object

Class

Inheritance

Polymorphysm

Encapsulation

Page 6: konsep pbo

OBJEK

Dua karakteristik objek :

Keadaan (state) Untuk menyimpan informasi objek

Disebut juga dengan atribut / field.

Misal : kucing sebagai objek, bisa mempunyaikeadaan. Yaitu lapar/kenyang, nilai berat badan, warna bulu, dll

Tingkah laku (behavior) Untuk menentukan kerja apa saja yang dapat

dilakukan objek

Disebut juga metode (method)

Metode objek, misal makan, tidur, dan berak.

Page 7: konsep pbo

Warna kulit : Biru Keputih-putihanWarna Hidung :merahMenggunakan kalung lonceng

Tidur

ATRIBUT / FIELD TINGKAH LAKU / METHOD

Page 8: konsep pbo

Class (Kelas)

Setiap program dalam java paling tidakmempunyai satu buah class.

Class bisa dikatakan sebagai cetak biruatau template objek.

Class bukanlah objek real, namunkonsep objek. Contohnya, dalam game yang anda buat,

terdapat dua ekor kucing, bernama Anggoradan Persia.

Maka kucing adalah class, sedang Anggoradan Persia adalah objek dari tipe kucing.

Page 9: konsep pbo

Pendefinisian (Class)

Class : Kucing

Field : nama, berat badan. Dalam deklarasi class, nama dan berat

badan kucing tidak ditentukan, karenasetiap Kucing bisa mempunyai namadan berat yang berbeda2.

Field akan ditentukan ketika membuatobjek kucing. Misal : dibuat objekkucing bernama Anggora dg berat 5 kg, dan objek kucing lain bernama Persia dg berat 7 kg.

DemoKucing.java

Page 10: konsep pbo

Inheritance (Pewarisan)

Inheritance : Penurunan sifat dari class.

Anjing dan kucing mewarisi sifat dari class di atas (superclass), yaitu mamalia.

Hewan

mamalia

anjing kucing

burung ikan

Pewarisan class dalam dunia hewan

Page 11: konsep pbo

Manusia

Guru

SMK SMA

mahasiswa

MahasiswaS2

MahasiswaS1

Dosen

Pewarisan class dalam dunia pendidikan

Pewarisan dilakukan dengan mendefinisikanclass baru, dengan beberapa karakteristikyang diambil dari class lain.

Karakteristik yang diwariskan terdiri dari field dan metode.

Page 12: konsep pbo

Class Manusia didefinisikan mempunyai field : nama, TTL, dan metode makan().

Artinya, semua class yang diturunkan dariclass Manusia (Guru, Dosen, Mahasiswa, Guru SMP, Mahasiswa S2) juga akanmempunyai field nama, TTL, dan metodemakan().

Penerapan pewarisan telah memudahkanpemahaman sistem serta lebih efisien. Tidak perlu mendefinisikan ulang field dan

metode di setiap class.

Pengeditan lebih mudah, jika adan perubahanpada class manusia maka class di bawahnyaakan mengikuti perubahan tersebut.

Page 13: konsep pbo

Polymorphism

Kondisi dimana sesuatu mempunyaibeberapa bentuk.

Dalam OOP, penerapan polimorfismedilakukan menggunakan nama sama, namun implementasi berbeda.

Contoh : objek mahasiswa dapatmelakukan metode mencuci yang berbeda, yaitu metode mencuci motor, mencuci piring, mencuci baju, tentudilakukan dengan cara yang berbeda.

Page 14: konsep pbo

Polymorphism (Lanjutan)

Polimorfisme digunakan untuk memudahkanpemrograman karena lebih natural.

Kita tidak harus menggunakan nama yang berbeda untuk metode yang mirip secarabahasa.

Untuk contoh sebelumnya, kita cukupmenggunakan metode mencuci saja.

Polimorfisme diterapkan dengan mekanisme Overloading (signature yang berbeda pada

metode atau konstruktor dg nama sama)

Overriding (pendefinisian ulang metode ataukonstruktor pada class turunannya/ subclass)

Page 15: konsep pbo

Encapsulation

Implementasi penyembunyian informasi(information hiding)

Tujuannya menyembunyikan informasi data (field) objek sehingga tidak terlihat dari luar.

Informasi tidak diakses sembarangan. Sangat penting untuk keamanan, danmenghindari kesalahan program

Dilakukan pada class, metode, dan field. Penerapannya secara bertingkat

menggunakan access modifier yang terdiriatas private, public, dan protected.