Anda di halaman 1dari 14

LAPORAN AKHIR

PRAKTIKUM PBO
MODUL 6

Disusun Oleh :
Nasywa Safa Talitha
3711211010
Sistem Informasi/A

PROGRAM STUDI SISTEM INFORMASI


FAKULTAS SAINS DAN INFORMATIKA
UNIVERSITAS JENDERAL ACHMAD YANI
2021
BAB I
PRAKTIKUM

Source Code :

class Kucing: 
  def __init__(self, nama, umur): 
    self.nama = nama 
    self.umur = umur 
  
  def bersuara(self): 
    print("Meow") 
 
 
class Dog: 
  def __init__(self, nama, umur): 
    self.nama = nama 
    self.umur = umur 
  def bersuara(self): 
    print("Guk..guk...") 
 
kucing1 = Kucing("Tom", 3) 
anjing1 = Dog("Spike", 4) 
 
for hewan in (kucing1, anjing1): 
 hewan.bersuara() 

Analisa Singkat :
Diatas adalah class hewan dari Kucing dan Anjing. Keduanya memiliki struktur dan metode yang
sama, yang itu bersuara().

Source Code :

class Burung: 
  def intro(self): 
    print("Di dunia ini ada beberapa type berbeda dari spesies burung") 
  def terbang(self): 
    print("Hampir semua burung dapat terbang, namun ada beberapa yang t
idak dapat terbang") 
 
class Elang(Burung): 
  def terbang(self): 
    print("Elang dapat terbang") 
 
class BurungUnta(Burung): 
  def terbang(self): 
    print("Burung unta tidak dapat terbang") 
    
obj_burung = Burung() 
obj_elang = Elang() 
obj_burung_unta = BurungUnta() 
obj_burung.intro() 
obj_burung.terbang() 
obj_elang.intro() 
obj_elang.terbang() 
obj_burung_unta.intro() 
obj_burung_unta.terbang()
Analisa Singkat :
Pada program diatas kita menggunakan metode overriding, dimana metode terbang() pada parent class
Burung, di timpa oleh masing-masing metode child class nya yang terdapat pada class Elang dan
Burung Unta.

Source Code :

a = 23 
b = 11 
c = 9.5 
s1 = "Hello" 
s2 = "There!" 
print(a + b) 
print(type(a + b)) 
print(b + c) 
print(type (b + c)) 
print(s1 + s2) 
print(type(s1 + s2)) 
Source Code :

from math import pi 
class Rectangle: 
  def __init__(self, length, breadth): 
    self.l = length 
    self.b = breadth 
  def perimeter(self): 
    return 2*(self.l + self.b) 
  def area(self): 
    return self.l * self.b 
class Circle: 
  def __init__(self, radius): 
    self.r = radius 
  def perimeter(self): 
    return 2 * pi * self.r 
  def area(self): 
    return pi * self.r ** 2 
    
# Initialize the classes 
rec = Rectangle(5,3) 
cr = Circle(4) 
print("Perimter of rectangel: ",rec.perimeter()) 
print("Area of rectangel: ",rec.area()) 
print("Perimter of Circle: ",cr.perimeter()) 
print("Area of Circle: ",cr.area())
Source Code :

class Shark(): 
  def swim(self): 
    print("The shark is swimming.") 
  def swim_backwards(self): 
    print("The shark cannot swim backwards, but can sink backwards.") 
  def skeleton(self): 
    print("The shark's skeleton is made of cartilage.") 
class Clownfish(): 
  def swim(self): 
    print("The clownfish is swimming.") 
  def swim_backwards(self): 
    print("The clownfish can swim backwards.") 
  def skeleton(self): 
    print("The clownfish's skeleton is made of bone.")

Analisa Singkat :
Program diatas merupakan kegiatan membuat python dengan nama file fish_polymorphic.py.

Source Code :

sammy = Shark() 
sammy.skeleton() 
casey = Clownfish() 
casey.skeleton() 
sammy = Shark() 
casey = Clownfish() 
for fish in (sammy, casey): 
 fish.swim() 
 fish.swim_backwards() 
 fish.skeleton() 

Source Code :

class Indonesia: 
  def ibukota(self): 
    print("Jakarta adalah ibukota Indonesia.") 
  
  def bahasa(self): 
    print("Bahasa Indonesia adalah bahasa nasional di Indonesia.") 

class Malaysia: 
  def ibukota(self): 
    print("Kuala Lumpur adalah ibukota Malaysia.")
  def bahasa(self): 
    print("Bahasa Melayu adalah bahasa nasional di Malaysia.") 

Source Code :

ind = Indonesia() 
mas = Malaysia() 
Source Code :

def informasi(negara): 
 negara.ibukota() 
 negara.bahasa()

Source Code :

informasi(ind) 
informasi(mas) 
BAB II
TUGAS PRAKTIKUM

1. Buatlah sebuah kelas dengan nama Mahasiswa, dengan tiga versi polymorphisme.

Source Code :

# Polymorphism dengan Function dan objects :

class India():
  def capital(self):
    print("New Delhi is the capital of India.")

  def language(self):
    print("Hindi is the most widely spoken language of India.")
  def type(self):
    print("India is a developing country.")

class USA():
  def capital(self):
    print("Washington, D.C. is the capital of USA.")

  def language(self):
    print("English is the primary language of USA.")

  def type(self):
    print("USA is a developed country.")

def func(obj):
  obj.capital()
  obj.language()
  obj.type()

obj_ind = India()
obj_usa = USA()

func(obj_ind)
func(obj_usa)

Analisa Singkat :

Pada program diatas bisa terlihat bahwa dalam metode Polymorphism tipe function dan objek
memungkinkan untuk membuat fungsi dan mengambil objek apapun.

Contohnya adalah ketika kita membuat perintah “ func ()” kita akan memanggil sebuah fungsi yang
akan dipanggil lalu dengan memasukkan nama fungsinya sepeerti perintah “
func(obj_ind)func(obj_usa)” kita akan memanggil fungsi dan objek yang sesuai dengan isi yang ada di
dalam tanda kurum function tersebut.
Source Code :

# POLMOLYPYHRM MENGGUNAKAN CLASS
class Mahasiswa:
    def __init__(self, nama, umur):
        self.nama = nama
        self.umur = umur
 
    def bersuara(self):
        print("Kami mahasiswa Jurusan Sistem Informasi")
 
 
class Dosen:
    def __init__(self, nama, umur):
        self.nama = nama
        self.umur = umur
 
    def bersuara(self):
        print("Kami mahasiswa UNJANI")
 
mahasiswa1 = Mahasiswa("Tom", 3)
dosen1 = Dosen("Spike", 4)
 
for unjani in (mahasiswa1, dosen1):
    unjani.bersuara()
Analisa Singkat :

Pada program diatas bisa dilihat bahwa dari segi struktur antara class mahasiswa dengan class dosen
mempunyai struktur yang sama dan juga mempunyai method yang sama yaitu “def bersuara (self) “
yang membedakan hanyalah tipe classnya saja tetapi bisa dijalankan dengan fungsi dan method yang
sama.

Source Code :

# Polymorphism dengan Inheritanc
class Burung:
 def intro(self):
  print("Di dunia ini ada beberapa type berbeda dari spesiesburung")

 def terbang(self):
  ("Hampir semua burung dapat terbang, namun ada beberapa yang tidak da
pat terbang")

class Elang(Burung):
 def terbang(self):
   print("Elang dapat terbang")

class BurungUnta(Burung):
 def terbang(self):
   print("Burung unta tidak dapat terbang")

obj_burung = Burung()
obj_elang = Elang()
obj_burung_unta = BurungUnta()
obj_burung.intro()
obj_burung.terbang()
obj_elang.intro()
obj_elang.terbang()
obj_burung_unta.intro()
obj_burung_unta.terbang()

Analisa Singkat :

Pada source code kali ini kita bisa membandingkan adanya metode inheritance seperti pada kode
“def terbang(self):
  ("Hampir semua burung dapat terbang, namun ada beberapa yang tidak da
pat terbang")”
Dengan “ class Elang(Burung):
 def terbang(self):
   print("Elang dapat terbang")

class BurungUnta(Burung):
 def terbang(self):
   print("Burung unta tidak dapat terbang")”

Adanya perbedaan pada class child nya seperti ada burung yang bisa terbang ataupun yang tidak bisa
terbang yang awalnya class child tidak bisa dimodifikasi tetapi dengan menggunakan metode
inheritance bisa dimodifikasi sehinggan metode ini juga biasa disebut dengan method overriding.
BAB III
KESIMPULAN

1. Konsep polymorphism adalah membuat objek dengan kemampuan untuk menghasilkanaksi yang
berbeda. Bila method yang dipanggil sama, maka aksi yang dikerjakantergantung tipe objek masing-
masing.
2. Method Overloading adalah kemampuan yang membolehkan sebuah class memiliki 2atau lebih
method dengan nama yang sama dan dengan parameter sebagai pembeda.
3. Fungsi Double.valueOf adalah untuk mengubah tipe data String ke tipe data Integer.Sehingga
proses matematika dapat berjalan.
4. Keyword “this” digunakan untuk mengakses variabel instan dari objek dan menyatakan
objek sekarang. Selain itu, “this” juga berfungsi untuk menyatakan variabel global.
 5. Parameter pada sebuah method dapat diberikan input secara langsung oleh pengguna.Salah satunya
lewat fungsi Scanner.

Anda mungkin juga menyukai