Mochamad Kolbi Nuron_5025231183_Tugas PBO13

 Nama : Mochamad Kolbi Nuron

NRP : 5025231183

Kelas: PBO A Tugas 13

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

from abc import ABC, abstractmethod


# Kelas abstrak MakhlukHidup

class MakhlukHidup(ABC):

    

    @abstractmethod

    def bernafas(self):

        pass

    

    @abstractmethod

    def makan(self):

        pass

    

    @abstractmethod

    def tumbuh(self):

        pass


# Kelas Manusia yang mewarisi MakhlukHidup

class Manusia(MakhlukHidup):

    

    def bernafas(self):

        print("Manusia bernafas dengan paru-paru.")

    

    def makan(self):

        print("Manusia makan dengan mulut, umumnya makanan padat atau cair.")

    

    def tumbuh(self):

        print("Manusia tumbuh dengan cara berkembang biak dan perubahan fisik selama masa hidup.")

    

    def berbicara(self):

        print("Manusia bisa berbicara menggunakan bahasa verbal.")


# Kelas Hewan yang mewarisi MakhlukHidup

class Hewan(MakhlukHidup):

    

    def bernafas(self):

        print("Hewan bernafas dengan paru-paru atau insang, tergantung jenisnya.")

    

    def makan(self):

        print("Hewan makan dengan mulut, jenis makanan tergantung spesiesnya.")

    

    def tumbuh(self):

        print("Hewan tumbuh melalui proses perkembangbiakan dan bertambah besar selama hidupnya.")

    

    def bergerak(self):

        print("Hewan bisa bergerak dengan berbagai cara seperti berjalan, terbang, atau berenang.")


# Kelas Tumbuhan yang mewarisi MakhlukHidup

class Tumbuhan(MakhlukHidup):

    

    def bernafas(self):

        print("Tumbuhan bernafas melalui stomata pada daun.")

    

    def makan(self):

        print("Tumbuhan membuat makanannya sendiri melalui fotosintesis.")

    

    def tumbuh(self):

        print("Tumbuhan tumbuh dengan berkembang melalui biji atau stek.")

    

    def menyerap_air(self):

        print("Tumbuhan menyerap air melalui akar.")


# Fungsi utama untuk demonstrasi

def main():

    # Membuat objek dari masing-masing kelas

    manusia = Manusia()

    hewan = Hewan()

    tumbuhan = Tumbuhan()

    

    # Menggunakan metode yang ada pada masing-masing objek

    print("Manusia:")

    manusia.bernafas()

    manusia.makan()

    manusia.tumbuh()

    manusia.berbicara()

    

    print("\nHewan:")

    hewan.bernafas()

    hewan.makan()

    hewan.tumbuh()

    hewan.bergerak()

    

    print("\nTumbuhan:")

    tumbuhan.bernafas()

    tumbuhan.makan()

    tumbuhan.tumbuh()

    tumbuhan.menyerap_air()


if __name__ == "__main__":

    main()

PENJELASAN:
  • Kelas MakhlukHidup (Abstract Class):

    • Kelas MakhlukHidup adalah kelas abstrak yang diwariskan ke kelas-kelas lain (Manusia, Hewan, Tumbuhan).
    • Kelas ini mendeklarasikan tiga metode abstrak: bernafas(), makan(), dan tumbuh(). Metode ini tidak memiliki implementasi, karena setiap kelas turunan diharapkan untuk mengimplementasikannya.
    • @abstractmethod adalah decorator yang menunjukkan bahwa metode tersebut harus diimplementasikan oleh kelas turunan.
  • Kelas Manusia:

    • Kelas Manusia mewarisi kelas MakhlukHidup dan mengimplementasikan metode bernafas(), makan(), dan tumbuh() sesuai dengan karakteristik manusia.
    • Kelas Manusia juga memiliki metode tambahan berbicara(), yang khusus untuk manusia.
  • Kelas Hewan:

    • Kelas Hewan juga mewarisi kelas MakhlukHidup dan mengimplementasikan metode bernafas(), makan(), dan tumbuh() sesuai dengan karakteristik hewan.
    • Kelas Hewan memiliki metode tambahan bergerak(), yang menunjukkan bahwa hewan dapat bergerak.
  • Kelas Tumbuhan:

    • Kelas Tumbuhan mewarisi kelas MakhlukHidup dan mengimplementasikan metode bernafas(), makan(), dan tumbuh() sesuai dengan karakteristik tumbuhan.
    • Kelas Tumbuhan juga memiliki metode tambahan menyerap_air(), yang menjelaskan bagaimana tumbuhan menyerap air melalui akarnya.
  • Fungsi main():

    • Fungsi main() berfungsi untuk membuat objek dari ketiga kelas (Manusia, Hewan, dan Tumbuhan), kemudian memanggil metode yang sudah diimplementasikan di masing-masing kelas untuk mendemonstrasikan perilaku masing-masing makhluk hidup.


  • Komentar

    Postingan populer dari blog ini

    Mochamad Kolbi Nuron_5025231183_ETS PBO A

    tugas PBOA pengertian dan konsep OOP

    Mochamad Kolbi Nuron_5025231183_Tugas PBO 8