Transcript Konsep OOP

Konsep OOP
Object Oriented Programming with JAVA
2011/2012
TOPICS
• Paradigma OOP
• Konsep Class dan Obyek
• Class member (atribut, method,
constructor)
• Pembentukan class dan obyek
• Class modifier
Object Oriented Programming (OOP)
• Pemrograman Berorientasi Objek (OOP) :
menyelesaikan persoalan pemrograman
dengan membagi persoalan ke dalam unit-unit
kecil.
• Unit terkecil ini selanjutnya disebut
dengan OBJEK.
Fitur OOP
• Enkapsulasi  suatu cara untuk menyembunyikan
implementasi detail dari suatu class dalam rangka
menghindari akses yang ilegal
• Inheritansi  dimana suatu entitas/obyek dapat
mempunyai entitas/obyek turunan. Dengan konsep
inheritance, sebuah class dapat mempunyai class
turunan
• Polymorphism  kemampuan untuk
merepresentasikan 2 bentuk yang berbeda
Paradigma Pemrograman
• Paradigma adalah suatu cara pandang atau
cara berpikir.
• Paradigma pemrograman : Cara berpikir
seorang developer/programmer dalam
memecahkan persoalan pemrograman.
Paradigma OOP
• Paradigma OOP : cara berpikir seorang
programmer dalam menyelesaikan persoalan
menjadi unit-unit kecil yaitu objek.
Selanjutnya persoalan diselesaikan dengan
merancang interaksi antar OBJEK
pada sistem.
Istilah-istilah
• OBJEK & KELAS (CLASS)
– Objek : unit yang mewakili entitas di dunia nyata
– Kelas : penghasil objek
• ATRIBUT/DATA/PROPERTY/VARIABEL
– Menyimpan informasi/karakteristik setiap objek
• METODE (METHOD)/BEHAVIOUR
– Menyatakan proses-proses apa saja
yang dapat dilakukan oleh sebuah
objek.
MENGENAL OBJEK & CLASS
• Berbagai benda di sekitar kita adalah objek nyata
yang dapat dilihat, seperti : kucing, meja, rumah,
orang , dll
• Persoalannya, bagaimana memindahkan
pemikiran objek di dunia nyata menjadi objek di
dunia software atau pemrograman,
khususnya Java?
• Ambil contoh objek nyata yang akan
dipindahkan adalah objek orang.
ATRIBUT/DATA
• Setiap objek yang dinamakan ‘orang’ pasti
memiliki : nama, tinggi badan, berat badan,
warna rambut, warna kulit, jenis kelamin,
menggunakan kacamata, dll
• Ciri-ciri tersebut dapat dipindahkan
menjadi variabel-variabel dari
class yang sering disebut sebagai :
ATRIBUT atau DATA
Class Orang
– Contoh pemisalan objek orang nyata menjadi kode
program dalam class Orang :
class Orang {
String nama;
int tinggiBadan;
int beratBadan;
String warnaRambut;
String warnaKulit;
String jenisKelamin;
boolean berkacamata;
}
//nama orang
//dalam cm
//dlm kg
//hitam, pirang, coklat
//sawoMatang, hitam, putih
//pria atau wanita
//bila berkacamata berarti true
Latihan
A. Buatlah kelas-kelas berikut :
1.
Mobil
warna
tahun
merek
2.
Mahasiswa
nim
nama
jurusan
METHOD/BEHAVIOUR
• Method
– Selain memiliki atribut(STATE) yang diimplementasikan sebagai data,
orang/manusia juga dapat melakukan suatu aksi atau pekerjaan
tertentu (BEHAVIOR).
– Contoh aksi/behavior yang umum adalah menangis dan tertawa
– Kedua behavior tsb bisa dipindahkan ke dalam bahasa pemrograman
menjadi method sbb :
void menangsi() {
System.out.println(“hik..hikk..hik…”);
}
void tertawa() {
System.out.println(“ha..ha..ha..ha..”);
}
METHOD/BEHAVIOUR
• Method merupakan perwujudan aksi atau
tindakan dari dunia nyata di dalam
pemrograman komputer.
• Method dalam dunia pemrograman juga
“pasti melakukan sesuatu aksi”, misalnya
menampilkan String di konsol atau
melakukan operasi tertentu.
Contoh
• Kelas Mobil
• Kelas Mahasiwa
Mobil
Mahasiswa
warna
kapasitas tangki
nim
nama
jurusan
ipk
start
stop
dipercepat
cek nilai ipk
lihat biodata
registrasi
merk
tipe
data/atribut
perilaku/
method
Objek vs Class
• Adalah cetak biru (blueprint) atau prototipe yang
mendefinisikan variabel-variabel (data) dan methodmethod (perilaku) umum dari sebuah objek.
• Membuat kelas baru == membuat tipe data baru.
• Membuat class != membuat objek.
• Membuat objek == membuat instance
dari class (perwujudan dari class)
• Sedangkan Proses pembuatan object
disebut dengan instansiasi class.
Ilustrasi perbedaan antara class dan objek
How to Create Object?
• Dari gambar di atas dapat dipahami bahwa suatu
class dapat memiliki banyak objek, dan setiap objek
akan mewarisi data member dan method yang sama
dari class
• Untuk membuat objek Orang dari class Orang,
gunakan keyword new sbb :
Orang orang1 = new Orang();
Orang orang2 = new Orang();
 setiap objek dapat memiliki state
atau nilai data member yang berbeda
(hanya nama dan tipe variabel yang sama)
Variabel Reference
• Objek-objek yang dibuat perlu disimpan
dalam variabel yang akan menyimpan
referensi/address dari objek yang dibuat.
• Variabel yang tipe datanya berupa class inilah
yang disebut sebagai
variabel reference.
MENGENAL OBJEK & CLASS
Memindahkan orang dari dunia nyata menjadi class Orang
Ilustrasi pembuatan objek dari class
Excercise
• Lakukan instansiasi dari class Mobil, dimana
masing-masing objek memiliki data sbb :
Atribut
Mobil1
Mobil2
Mobil3
Warna
Merah
Hijau
kuning
Merk
Alphard
yaris
panther
Tipe
XV-2
Sporty
adventure
Kapasitas tangki
10
7
5
Excercise
• Lakukan instansiasi dari class Mahasiswa,
dimana masing-masing objek memiliki data
sbb :
Atribut
Mahasiswa1
Mahasiswa2
Mahasiswa3
nim
01234
01235
01236
nama
Alfa
Betha
Gamma
jurusan
Informatika
Elektronika
Sipil
ipk
3.4
3.7
3.0