STRUKTUR DATA OPENCOURSEWARE UNIVERSITAS PEMBANGUNAN JAYA Slide SIF108 OOP

Object Oriented
Struktur Data

Apa itu Object ?
• Object adalah instance dari sebuah Class
• Object adalah entitas yang memiliki struktur dan state
• State dapat diubah dengan menggunakan/memanggil
method-nya

Encapsulatio
n
Menyembunyikan
detail implementasi
atas data atau
operasi yang
dilakukan

Class
• Class adalah sekumpulan object dengan karakteristik
yang sama
• Membuat object dari suatu class dengan menggunakan

konstruktor

Class
Access modifier
- private
+ public
protected

Person
-

name: String
age: int
address: String
spouse: Person
children: Person[]

+ Person()
+ setName(String name):
void

+ getName(): String
...
+ setSpouse(Person spouse):
void
+ getSpouse(): Person
+ addChildren(Person child):
void

Class name

Attribute / Field
Menggambarkan data
yang dapat disimpan
oleh Object

Method
Menggambarkan apa
yang dapat dilakukan
oleh Object


Mendesain Class
• Tally counter adalah alat yang
digunakan untuk membantu
penghitungan.
• Jika tombol atas ditekan, angka
akan bertambah satu
• Jika tombol reset ditekan,
angka akan kembali ke angka 0
(nol)
Desain class untuk Tally
Counter!

Class Tally Counter
TallyCounter
- count: int
+ tambah():
void
+ reset(): void
+ getCount():
int


• Method tambah() akan
menaikan (increment) nilai pada
attribute count satu tingkat
• Method reset() akan
mengembalikan nilai attribute
count menjadi nol
• Method getCount()
mengembalikan nilai attribute
count.
Buatlah program untuk Class

public class TallyCounter {
private int count;
public void tambah() {
// dapat diartikan this.count = this.count + 1;
this.count += 1;
}
public void reset() {
this.count = 0;

}
public int getCount() {
return this.count;
}

Studi Kasus: java.math.BigInteger
• Jelaskan apa itu class BigInteger
• Buatlah object BigInteger yang mengandung nilai 1,
kemudian simpan divariabel bernama var1
• Buatlah object BigInteger yang mengandung nilai
100 , kemudian simpan divariabel bernama var2
• Gunakan method pada class BigInteger untuk
menjumlah var1 dan var2, kemudian simpan
divariabel bernama var3
• Cetak isi dari var3

Class

•Class
terdiri dari name

•Attribute
•method

Instance of

Object

inheritance

Child
Object

encapsulation

Menentukan
data yang
dapat
disimpan dan
apa yang bisa
dilakukan


Polymorphis
m

Sebua
h
Object

Tugas
• An Account class stores a current balance, and
provides getBalance, deposit, withdraw, and
toString methods in addition to at least one
constructor. Write and test an Account class. Make
sure your withdraw method throws an exception if
appropriate