Class, Objek
dan
Array of Object
TIM DOSEN PENGAMPU MATA KULIAH STRUKTUR DATA 2019/2020
JURUSAN TEKNOLOGI INFORMASI
Konsep Pemrograman
Berorientasi Objek
Java → merupakan bahasa pemrograman yang secara
penuh menerapkan konsep PBO
PBO → paradigma pemrograman yang memandang
suatu program terdiri dari kumpulan objek-objek yang
saling berinteraksi
Objek menjadi perhatian utama
Ketika hendak membuat suatu program dari suatu,
yang harus diidentifikasi dulu adalah objek-objek apa
yang ada di dalam sistem tersebut
Konsep Pemrograman
Berorientasi Objek
PBO Prosedural
Sudut Melihat program Melihat program
pandang sebagai kumpulan sebagai kumpulan
objek2 yg berinteraksi proses2/prosedur2
Fokus utama Objek Proses/Prosedur/Fungsi
Contoh 1 Sistem Perkuliahan di Sistem Perkuliahan di
Kelas: Kelas:
• Mahasiswa • Bertanya
• Dosen • Menjawab
• Matakuliah • Presentasi
• Form Absensi • Mengabsensi
• Surat ijin kehadiran
• Soal • Mengerjakan soal
Konsep Pemrograman
Berorientasi Objek
PBO Prosedural
Contoh 2 Sistem Perbankan: Sistem Perbankan:
• Akun/Rekening • Setor
• Nasabah • Tarik
• Uang • Transfer
Konsep Pemrograman
Berorientasi Objek
Konsep PBO yang paling mendasar adalah (1) Class
dan (2) Object
Selain kedua konsep dasar tersebut, ada beberapa
konsep dasar lain:
Enkapsulasi
Inheritance
Polimorfisme
Pada semester ini, konsep yang akan dominan
digunakan adalah Class dan Object
Konsep Enkapsulasi, Inheritance, dan Polimorfisme akan
dijelaskan detil di matakuliah PBO semester 3
Object
Pada slide sebelumnya disebutkan bahwa fokus
utama PBO adalah pada Object
Object merupakan benda nyata
Contoh objek yang ada di dalam kelas:
Meja 1, Meja 2 … Meja 30
Mahasiswa 1, Mahasiswa 2…Mahasiswa 30
LCD
Papan tulis
Laptop, dst
Object
Karakteristik Object:
Memiliki sesuatu
data/karakter/properti/variabel/state/field/atribut
Bisa melakukan sesuatu tingkah
laku/behaviour/fungsi/method
Object
Contoh Object:
Object Sepeda
Atribut Method
- Gear = 5 - Ubah gear
- Kecepatan = - Mengerem
18
- Rpm = 90 - Ubah ritme
Object
Contoh Object:
Object Mahasiswa
Atribut Method
- NIM = 1614210045 - Mengikuti ujian
- Nama = John Doe - Melihat KHS
- IPK = 3.5 - Melihat tunggakan
akademik
- Alamat = Malang
Class
Setiap object pasti berawal/dibuat dari suatu
rancangan/desain/template/class
Class merupakan template untuk membuat
object
Proses pembuatan object dari suatu class disebut
instansiasi
Object tidak akan ada jika tidak ada class, dan
class tidak akan bisa digunakan jika belum dibuat
objek nya.
Class
Class Object
Penjelasan Masih berupa Objek nyata/riil yang
rancangan/template/d sudah dibentuk dari
esain/blueprint suatu class
Sifat Umum Spesifik
Contoh 1 • Mahasiswa • Mahasiswa 1,
• Dosen Mahasiswa 2, dst
• Matakuliah • Dosen A, dosen B,
dst
• Matakuliah PBO,
matakuliah basis
data
Class
Apakah Class juga memiliki atribut dan method ?
Ya, Class juga memiliki atribut dan method,
sebagaimana objek juga memilikinya. Bedanya,
jika atribut dan method yang di objek sudah riil,
sudah bisa diberi nilai tertentu. Sedangkan atribut
dan method di class masih berupa rancangan.
Class
Format Deklarasi Class:
class NamaClass{
//deklarasi atribut
//deklarasi method
}
Contoh:
class Sepeda{
}
Atribut
Atribut : data yang dimiliki oleh object atau class
Nama atribut biasanya ditandai dengan kata
benda
Contoh : Atribut yang dimiliki oleh mahasiswa
antara lain nim, nama, IPK, alamat
Atribut
Format Deklarasi Atribut :
tipeData namaAtribut;
Contoh:
String nama;
float ipk;
int umur;
boolean statusLulus;
Method
Method : merupakan proses/tingkah laku/fungsi
yang bisa dilakukan oleh suatu objek
Method digunakan oleh objek untuk berinteraksi
dengan objek yang lain
Nama method biasanya ditandai dengan kata
kerja
Contoh : method melihat KHS, mengerjakan ujian
dari objek mahasiswa
Method
Format Deklarasi Method:
tipeData namaMethod(tipeData param){
//isi method
}
Contoh:
void tampilStatus(boolean st){
if(st==true)
System.out.println(“Lulus”);
else
System.out.println(“Belum L ulus”);
}
Instansiasi
Instansiasi → Proses pembuatan objek dari suatu
class
Ditandai dengan kata kunci new
Contoh:
Sepeda spd = new Sepeda();
Mengakses Atribut dan
Method suatu Objek
Setelah objek terbentuk, selanjutnya atribut dan
method yang dimiliki objek tersebut bisa mulai
digunakan atau diakses.
Cara mengakses atribut:
namaObjek.namaAtribut = nilai;
Cara mengakses method:
namaObjek.namaMethod();
Contoh:
spd.kecepatan = 10;
System.out.println(spd.kecepatan);
spd.tampil();
Deklarasi Class
Atribut
Method
Ilustrasi Program
Instansiasi
Menjalankan method dari objek spd
Memberikan nilai
atribut dari objek spd
Konstruktor
Konstruktor → Method istimewa yang digunakan
saat pembuatan objek (instansiasi)
Istimewa:
Nama method sama dengan nama class
Tidak memiliki tipe data method
Hanya bisa dijalankan/dipanggil pada proses
instansiasi
Bisa memiliki parameter
Konstruktor
Jenis konstruktor
Konstruktor Default :
konstruktor yang tidak memiliki parameter
konstruktor default
Konstruktor Berparameter : konstruktor yang memiliki
parameter
Contoh konstruktor default:
public Sepeda(){
}
Contoh konstruktor berparameter
public Sepeda(float kecp, int ge){
}
Konstruktor
Konstruktor digunakan pada saat instansiasi
Contoh penggunaan konstruktor default:
Sepeda spd = new Sepeda();
Contoh penggunaan konstruktor berparameter:
Sepeda spd = new Sepeda(15.5, 2);
Diagram Class
Sepeda
kecepatan: float
gear: int
tambahKecepatan(): void
kurangiKecepatan(): void
sesuaikanGear(): void
tampil(): void
Array of Object
Array adalah sekumpulan tempat penyimpanan
data yang bertipe sama dan memiliki index.
Selain tipe data primitif seperti int, float, double,
dan sebagainya, array pada Java dapat juga
menyimpan variabel objek.
Amati kode berikut ini yang merupakan deklarasi
class PersegiPanjang
Deklarasi Array of Object
Untuk membuat array dari objek PersegiPanjang
diatas, caranya hampir sama seperti membuat
array biasa:
Kode diatas akan membuat array ppArray yang
dapat menampung tujuh objek PersegiPanjang.
Namun perlu diperhatikan bahwa array tersebut
masih kosong, belum ada isinya.
Untuk mengisikan sebuah persegi panjang pada
array tersebut, kita harus membuat objeknya
terlebih dahulu. Contoh:
Deklarasi Array of Object
Untuk menampilkan ke layar isi atribut dari objek
yang berada didalam array, caranya hampir
sama, contoh:
Deklarasi Array of Object
Perhatikan kode selengkapnya berikut ini:
Error NullPointerException
Sebelum mengisikan atribut pada objek didalam
array, sebelumnya harus dibuat objek-nya terlebih
dahulu.
Perhatikan bahwa kode dibawah ini akan
memunculkan error NullPointerException pada saat
program dijalankan:
Hal tersebut dikarenakan pada index ppArray ke-1,
belum dibuat objek PersegiPanjang. Berikut ini kode
yang benar:
Pembuatan objek
PersegiPanjang pada
ppArray index ke-1
Looping untuk membuat
objek ke semua index
array
Kita bisa gunakan looping untuk secara otomatis
membuat objek dan mengisikannya ke semua
index array yang ada:
Menggunakan Konstruktor
Kita dapat juga menggunakan konstruktor untuk
membuat objek didalam array sekaligus
mengisikan atributnya.
Konstruktor adalah method yang bernama sama
dengan nama class dan tidak memiliki return
type.
Konstruktor ini akan dipanggil pertama kali saat
kita membuat object dari class tersebut.
Menggunakan Konstruktor
Perhatikan class PersegiPanjang yang telah
dilengkapi konstruktor berikut ini:
Kemudian pada fungsi main:
Menggunakan Konstruktor
Perhatikan kode selengkapnya berikut ini: