• Tidak ada hasil yang ditemukan

Polimorfisme dalam Pemrograman Berorientasi Objek

N/A
N/A
22 Nadya Hapsari Putri

Academic year: 2024

Membagikan "Polimorfisme dalam Pemrograman Berorientasi Objek"

Copied!
21
0
0

Teks penuh

(1)

POLYMORPHISM

(2)

POLYMORPHISM

1. Heterogenous Collection 2. Object Casting

3. Polymorphic Arguments

4. InstanceOf

(3)

POLYMORPHISM

▪ Polymorphism: poly (banyak), morph (bentuk)

▪ Polimorfisme → konsep dalam OOP yang memperbolehkan sebuah aksi diimplementasikan secara berbeda

▪ Polimorfisme →konsep dalam OOP yang memperbolehkan

sebuah objek untuk memiliki banyak bentuk

(4)

Pegawai

Dosen TenagaKependidikan dosen1 merupakan instance

dari class Dosen tapi dikenali sebagai object bertipe

Pegawai

(5)

Hewan

Kucing

Anggora

(6)

CLASS OBJECT

Class Object merupakan root dari semua hirarki class. Artinya, semua object memiliki superclass dengan nama Object. Oleh karena itu, semua instance dapat dikenali sebagai Object

(7)

HETEROGENOUS COLLECTION

▪ Dalam Java, setiap elemen dalam array harus memiliki tipe yang sama

▪ Konsep polimorfisme memungkinkan elemen dalam array bersifat heterogen

(8)

OBJECT CASTING

▪ Typecasting merupakan konversi variable dari suatu tipe data menjadi tipe data lainnya

▪ Typecasting juga dapat dilakukan terhadap object

▪ Terdapat 2 jenis object casting: upcasting & downcasting

(9)

UPCASTING

▪ Dilakukan untuk mengubah child object menjadi parent object

▪ Dapat dilakukan secara implisit

▪ dosen1 merupakan instance dari class Dosen, tetapi setelah proses upcasting akan dikenali sebagai object bertipe Pegawai

▪ tendik1 merupakan instance dari class TenagaKependidikan, tetapi setelah upcasting akan dikenali sebagai object bertipe Pegawai

eksplisit

(10)

DOWNCASTING

▪ Dilakukan untuk mengubah parent object menjadi child object

▪ Tidak dapat dilakukan secara implisit

▪ Jika hewan2 didowncast menjadi object bertipe Ular maka akan muncul

Java.Lang.ClassCastException

Upcasting

Downcasting

(11)

nip: String nama: String

Pegawai

displayinfo(): void

nidn: String

Dosen

displayinfo(): void mengajar(): void

kategori: String

TenagaKependidikan

displayinfo(): void

(12)

▪ dosen1 merupakan instance dari class Dosen, tetapi setelah proses upcasting akan dikenali sebagai object bertipe Pegawai

▪ Oleh karna itu, dosen1 tidak akan dapat mengakses atribut yang dideklarasikan di class Dosen (misalnya nidn) maupun memanggil method yang hanya ada di class

Dosen (misalnya mengajar())

(13)

Method displayInfo() dapat dikenali karena ada di class Pegawai, tapi karena terdapat overriding maka yang akan dieksekusi adalah method displayInfo() pada class Dosen

(14)

POLYMORPHIC ARGUMENTS

▪ Konsep polimorfisme juga memungkinkan parameter dari suatu method menerima argument dengan berbagai bentuk object

▪ Misalkan, terdapat method train() dengan parameter pegawai bertipe

Pegawai. Method ini akan dapat menerima argument bertipe Pegawai atau class lain yang merupakan subclass dari Pegawai

▪ Proses ini juga termasuk upcasting

(15)

Method train() dapat dipanggil dengan argument dosen1 bertipe Dosen maupun tendik1 bertipe TenagaKependidikan

karena dilakukan upcasting ke class Pegawai

(16)

INSTANCEOF

▪ Keyword instanceOf digunakan untuk mengidentifikasi apakah sebuah object merupakan instance dari suatu class/interface

(17)
(18)

POLYMORPHIC ARGUMENTS WITH INTERFACE

(19)

CLASS WEBPAGE

(20)

CLASS DOCUMENT

(21)

CLASS DOCUMENT

Referensi

Dokumen terkait

Salah satu keuntungan program didefinisikan dengan konsep OOP adalah adanya pengkapsulan ( encapsulation ) program dalam class dan object , dimana programmer yang menggunakan

penulisan nama lengkap, akan tetapi karena kelas ini tidak memiliki anggota statik, dan hanya objek yang diciptakan dari kelas ini memiliki variabel atau metode ini, maka

OOP memberikan kemudahan dalam pembuatan sebuah program, keuntungan yang didapat apabila membuat Program berorientasi objek atau object oriented programming (OOP)

OOP memberikan kemudahan dalam pembuatan sebuah program, keuntungan yang didapat apabila membuat Program berorientasi objek atau object oriented programming (OOP)

• Mampu menjelaskan konsep penjadwalan Ceramah dan Diskusi Penyeleksian Kondisi dan Perulangan • Algoritma dan flowchart • Bentuk if…else • Perulangan loop : for, while…do •

Polimorfisme di Java merupakan konsep dimana satu antarmuka memiliki banyak metode dengan fungsi yang berbeda relatif terhadap objek dari

Makalah Pemrograman Berbasis Objek membahas konsep, keunggulan, kekurangan, dan penerapan OOP dalam pengembangan perangkat lunak