class%&%object%(1) - ifrozi.files.wordpress.com · *oop%:paradigma%pemrogramanyang memandang%...
TRANSCRIPT
Class & Object (1) Imam Fahrur Rozi
* Mereview posisi dan konsep dasar OOP, terutama tentang Class dan Object * Memahami Diagram Class * Memahami cara membuat Class * Memahami cara membuat Atribut * Memahami cara membuat Method * Memahami cara membuat Objek / Instansiasi
Target
Intro
Algoritma dan Pemrograman (Alpro)
Pemrograman Berorientasi Objek (PBO)
ALPRO PBO
• Mempelajari cara membuat rangkaian logika untuk menyelesaikan masalah (Algoritma)
• Memodelkan Algoritma dalam bentuk Flowchart
• Mempelajari elemen dasar pemrograman komputer (variabel, tipe data, operator, seleksi kondisi : if, if-‐else, switch-‐case, perulangan : for, while, do-‐while, array, fungsi)
• Mempelejari tentang paradigma membuat program berorientasi objek
Intro
* OOP : Paradigma pemrograman yang memandang suatu program sebagai kumpulan OBJEK-‐OBJEK yang saling berinteraksi * Ketika merancang program dengan menggunakan paradigma OOP, berarti yang paling mendasar harus dilakukan adalah identifikasi OBJEK-‐OBJEK yang ada dan saling berinteraksi dalam sistem
REVIEW Pengertian OOP (1)
* Perbandingan OOP dengan Structural Programming * OOP : * Program dipandang sebagai kumpulan OBJEK
* Structural Programming : * Program dipandang sebagai kumpulan FUNGSI atau PROSES
atau PROSEDUR
REVIEW Pengertian OOP (2)
* Contoh OOP vs Structural Programming
REVIEW Pengertian OOP (3)
SISTEM INFORMASI AKADEMIK
OOP Structural Programming
Kumpulan Objek seperti : Kumpulan Fungsi seperti :
* Mahasiswa * melihatKHS()
* Dosen * mengubahDataMhs()
* Matakuliah * memasukkanDataAbsensi()
* Staf Administrasi * memasukkanMataKuliah()
* Absensi, dsb * MencetakKHS(), dsb
* Sesuatu yang NYATA dan bukan sekedar rancangan * Bersifat khusus * Contoh OBJEK: * Matakuliah OOP, Matakuliah Alpro, Matakuliah Basis
Data, dsb * Kucing, Kambing, Sapi, Harimau dsb * Mobil Kijang, Mobil Panther, Mobil Honda Jazz dsb
REVIEW OBJEK
* RANCANGAN atau TEMPLATE atau BLUE PRINT yang digunakan untuk menggambarkan atau membuat objek * Bersifat umum
REVIEW CLASS
CLASS OBJEK
Masih berupa Rancangan/ template/blue print
Sudah nyata (bukan sekedar rancangan lagi)
Template untuk membuat objek Hasil realisasi dari class, atau sesuatu bentuk nyata yang dibuat dari class
Contoh: Contoh:
* Mobil * Mobil Kijang, Mobil Panther, Honda Jazz, dsb
* Matakuliah * Matakuliah OOP, Alpro, Basisdata dsb
* Hewan * Sapi, Kucing, Kambing, dsb
* dsb *dsb
REVIEW CLASS vs OBJEK
REVIEW Ilustrasi Class & Objek
CLASS OBJECT
* Memiliki : * Atribut/Data/Properti/State/Karakter : Data atau properti yang
dimiliki oleh class/objek * Method/Fungsi/Prosedur/Behaviour : Perilaku atau sesuatu
yang bisa dilakukan oleh suatu class/objek
* Contoh: * Class: Mahasiswa * Atribut: nim, nama, ipk, alamat * Method: melihatIpk(), mengubahBiodata(), melihatKHS() dsb
REVIEW Karakteristik Class & Objek
CLASS ATRIBUT METHOD
Komputer *Monitor *RAM *Hard Disk *PowerSupply *Processor
*menyimpanData() *menampilkanData() *reboot() *shutDown() *start()
Mobil *Velg *Warna *Produsen *Transmisi
*tambahKecepatan() *mengerem() *berhenti() *berjalan *berbelok()
REVIEW Contoh Class
CLASS MOBIL OBJEK MOBIL KIJANG OBJEK MOBIL HONDA JAZZ
Atribut Velg Racing Racing
Warna Abu-‐Abu Silver
Produsen Toyota Honda
Transmisi Manual Otomatis
Method tambahKecepatan()
mengerem()
berhenti()
REVIEW Contoh Class dan Objek
* Diagram untuk menggambarkan desain Class
Diagram Class
Mobil
velg warna produsen transmisi
tambahKecepatan() mengerem() berhenti()
Nama Class
Daftar Atribut
Daftar Method
* Dengan menggunakan kata kunci class * Diikuti dengan nama class * Format: class NamaClass{….} * Nama klas diawalai dengan huruf besar. Jika terdiri dari lebih dari 1 kata, maka antar kata satu dengan kata yang lain digandeng, dan tiap huruf awal dari tiap kata menggunakan huruf besar * Biasanya berupa KATA BENDA
Cara Membuat Class
class Mahasiswa { //atribut dan method
} class MahasiswaReguler{
//atribut dan method }
Contoh Coding Class
* Cara membuat atribut sama dengan membuat variabel * Format:
* Tipe data dari suatu atribut menentukan jenis nilai apa yang akan disimpan dalam atribut yang bersangkutan * Nama atribut diawali dengan huruf kecil. Jika terdiri dari
lebih dari 1 kata, maka antar kata satu dengan yang lain digandeng. Kata pertama diawali huruf kecil, dan kata selanjutnya diawali dengan huruf besar.
Cara Membuat Atribut
TIPE_DATA NAMA_ATRIBUT 1
2
String velg; String warna; int jumRoda; float ipk;
Contoh Atribut
Nilai yang akan disimpan dalam atribut velg berupa string
Tipe Data Nama Atribut
* Sama dengan membuat fungsi * Format:
* Aturan penamaan method=aturan penamaan atribut
Cara Membuat Method
TIPE_DATA NAMA_METHOD (DAFTAR_ARGUMEN, …) { //isi method //isi method
}
1
2 3
4
* Tipe Data Method : * Menentukan nilai yang akan dikembalikan/dikeluarkan
oleh suatu method * Kata kunci untuk mengembalikan/mengeluarkan suatu
nilai adalah return * Method dengan tipe data void, berarti tidak memiliki
nilai kembalian, berarti tidak memerlukan kata kunci return di dalamnya
* Method dengan tipe data bukan void, berarti memerlukan suatu nilai kembalian, berarti harus memerlukan return di dalamnya
* Nilai yang dikembalikan suatu method harus sesuai dengan tipe data method
Cara Membuat Method
void sayHello(){ System.out.println(“Hello World!!”);
} int tambah (int a, int b){
int hasil = a+b; return hasil;
}
Contoh Method
TIDAK PERLU RETURN / TIDAK ADA NILAI KEMBALIAN
• TIPE DATA METHOD INT, BERARTI METHOD TSB HARUS MENGEMBALIKAN NILAI INT
• HARUS ADA RETURN
* Argumen Method : * Argumen biasa juga disebut parameter * Argumen digunakan untuk memasukkan nilai dari luar
method untuk diolah di dalam method * Argumen method bisa lebih dari satu, juga bisa tidak ada
sama sekali (tidak memiliki argumen) * Format pembuatan argumen sama dengan format
pembuatan variabel (tipe_data nama_argumen)
Cara Membuat Method
void sayHello(){ System.out.println(“Hello World!!”);
} int tambah (int a, int b){
int hasil = a+b; return hasil;
}
Contoh Method
TIDAK MEMILIKI ARGUMEN
MEMILIKI 2 ARGUMEN
* Objek dibuat dari Class * Sebelum membuat objek, harus dibuat class lebih dulu, yang mana dari class tsb nantinya objek akan dibuat * Proses membuat objek dari suatu class à INSTANSIASI * Ditandai kata kunci new * Aturan penamaan objek=penamaan atribut * Format:
NamaClass namaObjek = new NamaClass();
Pembuatan Objek
* Membuat objek dari klas Mahasiswa Mahasiswa m = new Mahasiswa(); * Membuat objek dari klas Sepeda Sepeda sp1 = new Sepeda();
Contoh Instansiasi
Contoh: Diagram Class à Class (1)
Mahasiswa
nim: String nama: String ipk: float umur: int
tampilBiodataMhs(): void tampilIpk(): void
* Kode program class Mahasiswa di atas masih berupa rancangan. Agar bisa digunakan, maka harus dibuat objek.
Contoh: Diagram Class à Class (2) INSTANSIASI
MENGAKSES ATRIBUT DARI SUATU OBJEK
MEMANGGIL/MENJALANKAN METHOD
Contoh (2)
Sepeda
kecepatan: float gigi: int
start(): void kurangiKecepatan(float v): void tambahKecepatan(float v): void stop(): void
Contoh (2)
Latihan
Kalkulator
operan1: int operan2: int hasil: float
tambah(): void kurang(): void kali(): void bagi(): void
* Suatu program digunakan untuk menghitung luas dan keliling persegi panjang. Persegi panjang memiliki panjang dan lebar.
Rumus luas persegi panjang= panjang*lebar Rumus keliling persegi panjang=2*(panjang+lebar) * Buat diagram klas dan programnya
Latihan