330 likes | 784 Views
OOP Java - Tj. Konsep Dasar OOP. Materi hari ini. Objek Kelas Encapsulation Inheritance Polymorphism. Objek (1). Sebutkan objek-objek yg ada di sekeliling kita ! Apakah Objek itu ? Objek : benda-benda mati ? Objek : makhluk hidup ? Objek : barang abstrak ?. Objek (2).
E N D
OOP Java - Tj KonsepDasar OOP
Materihariini • Objek • Kelas • Encapsulation • Inheritance • Polymorphism
Objek (1) • Sebutkan objek-objek yg ada di sekeliling kita ! • Apakah Objek itu ? • Objek : benda-benda mati ? • Objek : makhluk hidup ? • Objek : barang abstrak ?
Objek (2) • Objek dalam OOP, memiliki pengertian yg sama dengan objek-objek yg ada di sekeliling kita ! • Objek bisa berupa : • Benda benda mati • Makhluk hidup • Barang/ sesuatu yg abstrak • Objek : entitas yg ada disekeliling kita. • Mirip seperti Entitas yg anda tentukan ketika membuat ER diagram.
Objek (3) • Sebutkan apa saja yg biasanya dimiliki oleh suatu objek ?
Objek (4) • Objek memiliki : • Nama : identifikasi dari objek • State : status / ciri / atribut yg terdapat pd objek • Behavior : apa yg dapat dilakukan oleh objek tsb • Dalam OOP : • State = atribut • Behavior = method • Ekivalensinya dalam bhs non-OOP : • State = variabel • Behavior = fungsi / prosedur
Objek (5) • Sebutkan dari objek-objek disekitar kita : • Nama objek • State / atribut • Behavior • Any question, please… ?
Kelas (1) • Objek monitor komputer di meja anda apakah sama dengan objek monitor di meja teman sebelah kiri/kanan anda ? • Karakteristiknya (state & behavior) sama, tetapi merupakan 2 benda yg berbeda.
Kelas (2) • Kelas : kelompokobjek-objekygmemilikikarakteristikygsama (ygsejenis) • Kelas : definisi /spesifikasidariobjek-objek • Lebihtepatnyakelasdi-analogi-kansebagai : • Cetakankue • Blueprint / denahbangunan • Resepmasakan • dll • Dari satucetakanbisadibuatbanyakkueygbentuknyasama. • Dari satu blueprint rumahbisadibuatbanyakrumahygbentuk, ukuran, bahannyasama.
Kelas (3) • Misalkan sebuah kelas : • Nama kelas : Orang • Atribut : • Nama : String • Umur : integer • Method : • makan() Orang + nama : String + umur : int + makan() : void
Kelas (3--) • Demo menggunakan Netbeans • Membuat kelas • Membuat kelas testnya dengan membentuk beberapa objek • Latihan membuat kelas & kelas test sendiri
Encapsulation (1) • Objek & kelas : perwujudan dari konsep encapsulation • Dua pengertian dari konsep encapsulation : • Atribut & method dibungkus jadi satu • Atribut (& method) dapat dilindungi sehingga tidak dapat diakses dari luar secara langsung • Bisa dilakukan pada bahasa non-OOP ? • Bhs C : bisa memasukkan fungsi kedalam struct ? • Bhs Pascal : bisa memasukkan procedure / function kedalam record ?
Encapsulation (2) • Penjelasan pengertian kedua (akan dijelaskan lebih jauh pada pertemuan kuliah mengenai Get & Set method)
Inheritance (1) Orang + nama : String + umur : int • Menggunakan kata kunci : extends • Kelas induk : parent, superclass, ancestor • Kelas anak : child, subclass, descendant • Kita akan membuat turunan dari kelas Orang : + makan() : void Mahasiswa + nrp : String + belajar() : void
Inheritance (2) • Kodenya sbb : public class Mahasiswa extends Orang { public String nrp; public void belajar() { System.out.println(“Mhs “ + nama + “ sedang belajar”); } }
Inheritance (3) • Kelastestnyasbb : public class TestMahasiswa { public static void main(String[] args) { Mahasiswamhs; mhs.nama = “Deden”; mhs.umur = 20; mhs.nrp = “0874001”; mhs.makan(); mhs.belajar(); } }
Inheritance (4) • Tiga Konsep inheritance : • Semua atribut & method dari kelas induk diturunkan ke kelas anak • Pada kelas anak dapat menambahkan atribut & method yang tidak ada pada kelas induk • Pada kelas anak dapat memodifikasi method (behavior) yang sudah ada di kelas induk
Polymorphism (1) • Polymorphism : mengambil banyak bentuk • Kelakuan bisa berubah-ubah tergantung dari objek yang memanggilnya. • Akan dijelaskan lebih jauh pada pertemuan tentang Polymorphism