Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
OBJEK dan KELAS Sutrisno PTIIK-UB
2
Ikhtisar Objek Kelas Pesan Konsep Dasar PBO Deklarasi Kelas
Konstruktor Overloading
3
OBJEK? Di dunia nyata Objek KEADAAN (State): PERILAKU (Behavior):
Warna Nama Jenis PERILAKU (Behavior): Berjalan mengeong
4
OBJEK? Di Dunia Software Objek ATRIBUT (variabel): METODE (fungsi):
Warna Nama Jenis METODE (fungsi): Berjalan mengeong
5
OBJEK? Definisi : Entitas dalam sistem yang mewakili
suatu entitas dalam dunia nyata Mewakili
6
PENDEKATAN TERSTRUKTUR
Contoh : Pengembangan SIA (Sistem Informasi Akademik) Berorientasi Prosedur Prosedur / fungsi mhs_registrasi SIA mhs_krs dosen_insertNilai admin_setJadwal
7
SIA Berorientasi Obyek? Mahasiswa NIM nama registrasi() updateKRS()
Dosen NIP nama insertNilai() Administrasi nama alamat setJadwal()
8
Kelas (Class) Dalam suatu sistem, sering kali ditemui beberapa objek sejenis Beberapa objek sejenis dapat di-identifikasi sebagai suatu kelas (class) objek Kelas kucing1 jenis = anggora warna = coklat-hitam berjalan() mengeong() Kucing jenis warna berjalan() mengeong() kucing2 jenis = hutan jawa warna = coklat-hitam berjalan() mengeong()
9
Message / pesan Obyek berinteraksi dan berkomunikasi dengan obyek lain melalui message / pesan A message Obyek A Obyek B
10
Message / pesan Message terdiri dari kucing1 kucing2
Nama obyek yg dikirimi Nama method yg dipanggil Parameter yang diperlukan oleh method yang dipanggil berjalan(cepat) kucing1 kucing2
11
KONSEP DASAR PBO Abstraction (abstraksi) Encapsulation (pembungkusan)
Inheritance (pewarisan) Polymorphism (polimorfisme)
12
Abstraction (Abstraksi)
Abstraksi merupakan cara melihat suatu entitas (benda atau objek) dengan hanya memperhatikan hal-hal penting saja sesuai permasalahan. Dan mengabaikan rincian-rincian yang tidak relevan dengan permasalahan. Direalisasikan dalam bentuk kelas (class) contoh Mobil merk Kecepatan tahunPembuatan
13
Encapsulation (pembungkusan)
Suatu metode untuk menyembunyikan suatu bagian implementasi dari kelas dan menyediakan antarmuka bagi kelas/software lain yang akan mengaksesnya. Direalisasikan dalam bentuk kelas (class) Contoh Mobil kecepatan setKecepatan()
14
Deklarasi Kelas Sintaks deklarasi kelas dalam JAVA:
<modifiers> class <class_name> { [<attribute_declarations>] [<method_declarations>] }
15
Deklarasi Atribut dan Metode
Sintaks deklarasi atribut di JAVA: [<modifier>] <type> <namaAtribut> [= <default_value>]; Sintaks deklarasi metode di Java: [<modifier>] <return type> <namaMethod> ([daftar argumen]) { <statements> }
16
Modifiers < modifiers > public : objek dapat diakses dari luar
default : objek hanya dapat diakses dari satu package protected : kelas hanya dapat diakses package, subkelas private : objek hanya dapat diakses dari kelasnya sendiri Modifier Class Package Subclass Public Private - default Protected
17
Contoh Deklarasi Kelas
18
Diagram Kelas di UML Kucing NamaKelas jenis : String deklarasiAtribut
berat : int + setJenis(j : String) : void + getJenis() : String + setBerat(b : int) : void + getBerat() : int NamaKelas deklarasiAtribut definisiMetode Contoh Modifier: + : public : private # : protected ~ : package/default
19
Diagram Kelas di UML Objek Kelas kucing1 : Kucing Kucing
jenis = “Anggola” berat = 20 Kucing jenis : String berat : int + setJenis(j : String) : void + getJenis() : String + setBerat(b : int) : void + getBerat() : int kucing2 : Kucing jenis = “Hutan Jawa” berat = 10
20
Diagram Objek di UML Objek Kelas kucing1 : Kucing Kucing
jenis = “Anggola” berat = 20 Kucing jenis : String berat : int + setJenis(j : String) : void + getJenis() : String + setBerat(b : int) : void + getBerat() : int kucing2 : Kucing jenis = “Hutan Jawa” berat = 10
21
Diagram Objek di UML Objek Objek kucing1 : Kucing kandang : Kandang
jenis = “Anggola” berat = 20 kandang : Kandang kode : “0001” luas : 5 berisi kucing2 : Kucing jenis = “Hutan Jawa” berat = 10
22
Mendefinisikan Objek Sintaks Instansiasi Objek:
<NamaKelas> <namaObjek> = new <KonstruktorKelas>; Contoh: Kucing kucing1; kucing1 = new Kucing(); atau Kucing kucing1 = new Kucing();
23
Contoh Membuat Objek Buat objek k1 dan k2
Akses atribut nama melalui metode setNama() Akses metode berjalan() dan setNama()
24
Konstruktor Konstruktor layaknya metode, yang digunakan memberikan nilai awal saat sebuah objek diciptakan. Konstruktor akan dipanggil secara otomatis ketika keyword new dipakai untuk instansiasi kelas. Ciri konstruktor: Namanya sama dengan nama kelas Tidak memiliki return-type ataupun void. Sintaks Konstruktor: <public> <NamaKelas> (<Daftar Parameter>) { Pernyataan-pernyataan }
25
Contoh Konstruktor
26
Contoh Konstruktor
27
Overloading pada Konstruktor
Overloading Konstruktor adalah mekanisme pembuatan lebih dari satu konstruktor pada sebuah kelas. Pembeda antar konstruktor terletak pada jumlah parameter atau tipe parameter. Contoh overloading konstruktor pada kelas Kucing: Konstruktor pertama: pulic Kucing() { nama=“Kosong”; jenis=“Kosong”; } Konstruktor kedua: public Kucing(String nama, String jenis){ this.nama=nama; this.jenis = jenis;
28
Contoh Overloading Konstruktor
29
Contoh Overloading Konstruktor
30
Contoh Overloading Konstruktor
31
Contoh Overloading Konstruktor
32
Contoh Overloading Konstruktor
33
Overloading pada Metode
Overloading Metode adalah mekanisme pembuatan beberapa metode di sebuah kelas dengan nama metode yang sama. Pembeda antar metode dengan nama sama terletak pada jumlah parameter atau tipe parameter. Contoh overloading metode pada kelas Matematika berikut: Terdapat 3 metode di kelas Matematika yang mempunyai nama metode sama, yaitu metode kuadrat. Ketiga metode kuadrat mempunyai tipe parameter berbeda, yaitu: int, double dan String.
34
Contoh Overloading Metode
35
Contoh Overloading Metode
36
Latihan Suatu rak buku dalam perpustakaan, rak memiliki kode tertentu, pada rak tersebut kita dapat : menambah sejumlah buku, mengambil sejumlah buku dan mengetahui jumlah buku yang ada dalam rak sekarang. Dari permasalahan tersebut abstraksikan menjadi suatu kelas! Gambarkan diagram kelasnya
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.