Oopwithjava 2
Oopwithjava 2
Pemrograman
Berorientasi Obyek
1
Berorientasi Object?
Attribute:
Topi, Baju, Tas
Punggung, Jaket,
Tangan, Kaki, Mata
Behavior:
Cara Jalan ke Depan
Cara Jalan Mundur
Cara Belok ke Kiri
Cara Memanjat
2
Berorientasi Object?
Attribute (State):
Ban, Stir, Pedal Kopling/Gas/Rem,
Warna, Tahun Produksi
Behavior:
Cara Menghidupkan Mesin
Cara Manjalankan Mobil
Cara Memundurkan Mobil
Attribute Variable(Member)
Behavior Method(Fungsi)
3
Tugas
4
Procedural vs Object-Oriented
main
Account
credit
perform transaction debit
5
Object-Oriented Program
public class Halo{
6
Karakteristik OOP -1-
Abstraction:Cara kita melihat suatu sistem
dalam bentuk yang lebih sederhana, yaitu
sebagai suatu kumpulan subsistem (object)
yang saling berinteraksi.
Mobil adalah kumpulan sistem pengapian, sistem
kemudi, sistem pengereman
Encapsulation: Mekanisme menyembunyikan
suatu proses dalam sistem untuk menghindari
interferensi dan menyederhanakan penggunaan
sistem itu sendiri
Tongkat transmisi (gigi) pada mobil
Tombol on/off/pengaturan suhu pada AC
7
Karakteristik OOP -2-
Inheritance: Suatu class dapat mewariskan
atribut dan method kepada class lain (subclass),
serta membentuk class hierarchy
8
Karakteristik OOP -3-
Modularity: Sifat object adalah modular. Object
dapat ditulis dan dimaintain terpisah
(independen) dari object lain
Polymorphism: Suatu object dapat memiliki
berbagai bentuk, sebagai object dari classnya
sendiri atau object dari superclassnya
Overloading: Penggunaan satu nama untuk beberapa
method yang berbeda (beda parameter)
Overriding: Terjadi ketika deklarasi method subclass
dengan nama dan parameter yang sama dengan
method dari superclassnya
9
Class dan Object -1-
Class: mobil
Object: mobilnya pak Joko, mobilku
Class seperti cetakan kue, dimana kue yg
dihasilkan dari cetakan kue itu adalah object
Warna kue bisa bermacam-macam meskipun
berasal dari cetakan yang sama (object memiliki
sifat independen)
10
Class and Object -2-
Class = method+attribute
15
Message -2-
18
Membuat Class (Bicycle.java)
class Bicycle {
int speed = 0;
int gear = 0;
// method
void changeGear(int newValue) {
gear = gear + newValue;
System.out.println(" \nGear:" + gear);
}
void speedUp(int increment) {
speed = speed + increment;
System.out.println(" \nSpeed:" + speed);
}
}
19
Membuat dan Memanggil Object
class BicycleDemo {
public static void main(String[] args) {
// Membuat object
Bicycle bike = new Bicycle();
22
Kata Kunci this
Digunakan pada pembuatan class dan digunakan
untuk menyatakan object sekarang
class Mobil{ class Mobil{
String warna; String warna;
Int tahunProduksi; Int tahunProduksi;
23
Konstruktor -1-
24
Konstruktor -2-
class Mobil {
private String warna;
private int tahunProduksi;
26
Rehat Sejenak
Kepleset
Password
27
Referensi
Object First With Java, Fifth edition, David J. Barnes & Michael
Kölling, Prentice Hall / Pearson Education, 2012.
The JavaTM Tutorial,
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/,
Oracle, 1995-2014.
Java SE Tutorial,
http://www.oracle.com/technetwork/java/javase/downloads/j
ava-se-7-tutorial-2012-02-28-1536013.html, Oracle, 2014.
SCJP Sun Certified Programmer for JavaTM 6 Study Guide Exam
(310-065), Kathy Sierra & Bert Bates, Mc Graw Hill, 2008.
Object Oriented Programming with Java, Romi Satria
Wahono, 2008.
28