pemrograman lanjut - universitas brawijaya · class class menyatakan konsep (blueprint) class...
TRANSCRIPT
Pemrograman Lanjut
PTIIK - 2014
Class and Object
Objectives
Memahami tentang classes, objects, methods dan instance variables.
Mampu memberikan contoh object beserta atribut dan tingkah laku nya.
What Makes an Object?
René Descartes (Filosof pada abad ke-17) telah
meng-observasi bahwa manusia melihat dunia
ini dalam istilah-istilah yang berorientasi dengan
object
Ide object-oriented software
mengorganisasikan software dengan cara yang
sesuai dengan gaya berpikir otak kita yang
berorientasi object
Kita ingin “Sesuatu” yang “Melakukan Sesuatu”
Characteristics of Objects
Sebuah object terbuat dari bahan nyata
Sebuah object mewakili satu benda dari suatu jenis
benda
Sebuah object memiliki sifat/atribut/properti
Sebuah object dapat melakukan sesuatu hal dan
dapat dilakukan sesuatu
Characteristics of Objects
Item 1 (terbuat dari bahan nyata) terlalu ketat
Object : Akun Bank (bukan terbuat dari bahan yang nyata)
Atribut (pemilik, saldo, dll)
Object dapat melakukan sesuatu (charge untuk setiap
transaksi, pemberian bunga, dll
Object dapat dilakukan sesuatu (transfer, deposit, batal, dll)
3 item terakhir cukup jelas
Sebuah object memiliki identity
Sebuah object memiliki state
Sebuah object memiliki behavior
Software Objects
Kebanyakan program ditulis untuk melakukan
sesuatu yang berkaitan dengan dunia nyata
Akan menjadi mudah jika punya “software
objects” yang mirip dengan “real world objects”
“software objects” memiliki identity, state, dan
behavior seperti layaknya “real world objects”
Software Object
Sebuah object pada pemrograman adalah
sebuah komponen software yang strukturnya
mirip dengan object pada dunia nyata
Setiap object dibuat dari satu set data (sifat)
dimana variable menjabarkan esensial karakter
dari object, dan juga terdiri dari satu set dari
method (tingkah laku) yang menjabarkan
bagaimana tingkah laku dari object.
Jadi object adalah sebuah berkas software
dari variable dan method yg berhubungan
Class
Class adalah struktur dasar dari OOP.
Terdiri dari dua tipe dari anggota yang disebut
dengan field (attribut/properti) dan method.
Field menspesifikasi tipe data yang didefinisikan
oleh class.
Method spesifikasi dari operasi.
Sebuah object adalah sebuah instance pada
class.
Pencetak kukis class Dapat digunakan berkali-kali
untuk mencetak kukis.
Kukis object
Sebuah class dapat menghasilkan banyak object Dari 1 cetakan dapat dibuat
banyak kukis dengan berbagai macam hiasan, namun kukis-kukis tersebut tetap memiliki bentuk yang sama.
Class
class menyatakan konsep (blueprint)
class mendefinisikan karakteristik (atribut) dan aksi
(method) yang dimiliki object.
object adalah perwujudan dari konsep class
(instance of class)
Setiap object memiliki class yang mendefinisikan data
dan aksi yang dimiliki oleh object tersebut.
Class
Definisi class : merupakan template untuk membuat obyek.
Definisi class : merupakan prototipe / blue prints yang mendefinisikan variabel – variabel dan method – method secara umum.
Obyek merupakan hasil instansiasi dari suatu class.
Proses pembentukan obyek dari suatu class disebut dengan instantiation.
Obyek disebut juga instances.
Class
Variable dan methods dalam object Java secara
formal diketahui sebagai instance variable dan
instance methods untuk membedakannya dari
class variable dan class method
Perbedaan Class dan Object
Sebuah class mobil dimana dapat digunakan untuk
mendefinisikan beberapa object mobil
Mobil A dan mobil B adalah object dari class mobil
Perbedaan Class dan Object
Class name : Circle
Data Field : Radius
Methods : - getArea()
- getPerimeter()
Object1 : Circle1 Object2 : Circle2 Object3 : Circle3
Data Field:
Radius = 15
Data Field:
Radius = 20
Data Field:
Radius = 5
Class template
Three objects
of Circle class
Class
Ketika diinisialisasi, tiap object mendapat satu
set baru dari state variable of class.
Implementasi dari method dibagi diantara object
pada class yang sama.
Class menyediakan keuntungan berupa
reusability.
Contoh
Object lingkaran memiliki data field, radius. Tingkah laku dari
lingkaran adala menghitung luas dan keliling menggunakan
method getArea() and getPerimeter().
Mobil memiliki banyak atribut, seperti warna, jumlah pintu,
volume bensin, kecepatan saat berkendara, dan total km pada
odometer. Setiap mobil melakukan pemeliharaan thd atribut.
Contoh, memberikan informasi bensin pada tangki, tetapi tidak
tahu seberapa banyak sisa bensin pada tangki pada mobil
lainnya.
Object Akun bank memiliki atribut saldo yang
merepresentasikan jumlah uang pada akun. Object tersebut
dapat memiliki method untuk men-deposit uang ke akun,
method pengambilan uang dari akun, and method untuk
mengetahui saldo
Class StringTester
variable str1 digunakan untuk me-refer pada
object, str1 merupakan nama object
Objects dan Names for Objects
Variabel yang dapat me-refer pada object TIDAK selalu
memiliki object
Variabel str1 akan me-refer pada object hanya setelah
operator new dijalankan
Sama seperti pada dunia nyata. Kita hanya bisa
dianggap punya object kalau memang object tersebut
sudah benar-benar ada
Using a Reference to an Object
Sekali object dibuat (dengan operator new),
variable str1 me-refer pada actual object.
Object punya beberapa methods, salah satunya
method length().
Apa output dari program?
Invoking an Object's Method
Sebuah object terdiri dari : variables (state
information) dan methods (small programs).
Keduanya disebut members dari object
Java menggunakan notasi dot :
referenceToAnObject.memberOfObject
Contoh : memanggil method length() dari object str1
str1.length();
len = str1.length();
Static
Classes digunakan untuk membuat objects
(cookie cutter cookies)
Cookie cutter memiliki karakteristik yang TIDAK
dapat di-shared dengan cookies
cookie cutter terbuat dari baja dengan tepian yang tajam
tidak baik untuk dimakan
Setelah cookie cutter digunakan, maka akan ada
banyak cookies (soft, rounded, doughy things)
tetapi hanya ada satu yang terbuat dari baja
dengan tepian yang tajam
Static
Pada Java, karakteristik dari class yang TIDAK di-
shared dengan object-nya disebut static.
Hanya ada satu class, jadi ketika program berjalan,
jika ada sesuatu bertipe static maka hanya ada
satu saja.
"no matter how many objects have been made,
there is only one of these"
Variabel Class
Variabel class merupakan variabel milik dari
seluruh class
Variabel ini memiliki nilai yang sama untuk
semua object pada class yang sama
Variabel ini juga disebut static member
variables
Latihan
Definisikan sebuah obyek pada dunia nyata
Berikan 2 atribut dan 2 tingkah laku
Implementasikan ke dalam Java
buat satu class berikan nama yang sesuai
definisikan member dari class tersebut
buat class baru untuk mengujinya (Class Tester)
pada class tersebut, buatlah 2 obyek yang memiliki
atribut yang berbeda
081 331 834 734 / 088 160 127 40