Thursday, December 5, 2024

Pertemuan 13 - Abstraksi

 Nama: Muhammad Risyad Himawan Putra

NRP: 5025231205

Kelas: Pemrograman Berbasis Obyek (G)


Abstract Class
Implementation in BlueJ

 Source Code: MRHP1/Pertemuan_13

1. Tuliskan implementasi dari program kecil Abstract Class Makhluk hidup yang diwariskan kepada manusia, hewan, dan tumbuhan

Class MakhlukHidup

abstract class MakhlukHidup

  • Menjadi blueprint untuk semua makhluk hidup, yang mendefinisikan perilaku umum seperti bernafas dan makan.
  • Memiliki metode konkret info() untuk memberikan informasi umum tentang makhluk hidup.

Manusia, Hewan, Tumbuhan

    • Subclass dari MakhlukHidup yang mengimplementasikan metode abstrak seperti bernafas() dan makan().
    • Setiap subclass memiliki implementasi spesifik yang sesuai dengan jenis makhluk hidup tersebut.

info()

    • Merupakan metode konkret di abstract class MakhlukHidup untuk menampilkan informasi dasar bahwa objek tersebut adalah makhluk hidup.

Class Main & Testing


2. Pelajari dan baca simulasi Foxes and Rabbit yang ada di buku. Kemudian buat program perubahan dari struktur class umum menjadi bentuk Abstract Class.

Class Foxes and Rabbits Simulation

abstract class Animal

  • Blueprint untuk semua hewan dalam simulasi.
  • Mengelola properti umum seperti age dan alive untuk menentukan usia dan status hidup hewan.
  • Memiliki metode abstrak seperti act() dan getMaxAge() untuk perilaku spesifik subclass.

class Rabbit

    • Subclass dari Animal yang mewakili kelinci.
    • Mengimplementasikan metode act() untuk perilaku kelinci (melompat).
    • Menentukan usia maksimal kelinci sebagai 5 tahun dengan metode getMaxAge().

class Fox

    • Subclass dari Animal yang mewakili rubah.
    • Mengimplementasikan metode act() untuk perilaku rubah (berburu).
    • Menentukan usia maksimal rubah sebagai 10 tahun dengan metode getMaxAge().

class Simulation

    • Mengelola logika utama simulasi interaksi antar kelinci dan rubah selama beberapa hari.
    • Memantau usia dan status kehidupan hewan dan menambahkan event acak seperti kelinci mati atau lahir baru.

Class Main & Testing

No comments:

Post a Comment

PPB EAS - Aplikasi Member Timezone

Manajemen Keanggotaan & Loyalty Program Timezone dengan Room Database dan Jetpack Compose Aryaka Leorgi Epridaka - 5025231117 Muhammad ...