-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathinheritance.py
More file actions
94 lines (69 loc) · 1.85 KB
/
inheritance.py
File metadata and controls
94 lines (69 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
class Kendaraan:
def __init__(self, merek, tahun):
self.merek = merek
self.tahun = tahun
def info(self):
return f"Merek: {self.merek}, Tahun: {self.tahun}"
def nyalakan(self):
print(f"{self.merek} dinyalakan")
class Mobil(Kendaraan):
def __init__(self, merek, tahun, jumlah_roda):
super().__init__(merek, tahun)
self.jumlah_roda = jumlah_roda
def klakson(self):
print(f"Mobil {self.info()} memiliki klakson")
class Motor(Kendaraan):
def klakson(self):
print(f"Motor {self.info()} memiliki klakson")
def nyalakan(self):
print(f"{self.merek} dinyalakan secara otomatis")
avanza = Mobil("Avanza", 2019, 4)
avanza.nyalakan()
avanza.klakson()
print(avanza.jumlah_roda)
scoopy = Motor("Scoopy", 2022)
scoopy.nyalakan()
scoopy.klakson()
class Karyawan:
def __init__(self, nama, gaji):
self.nama = nama
self.gaji = gaji
class KaryawanTetap(Karyawan):
pass
class Manager(KaryawanTetap):
pass
class VicePresident(Manager):
pass
class BisaBerlari:
def berlari(self):
print("Berlari sangat cepat")
class BisaBerenang:
def berenang(self):
print("Berenang sangat cepat")
class Atlit(BisaBerlari, BisaBerenang):
def __init__(self, name):
self.name = name
eko = Atlit("Eko")
eko.berlari()
eko.berenang()
class A:
def method(self):
print("Method from A")
class B(A):
def method(self):
print("Method from B")
class C(A):
def method(self):
print("Method from C")
class D(B, C):
pass
d = D()
d.method()
eko = Karyawan("Eko", 10000000)
tono = KaryawanTetap("Tono", 10000000)
budi = Manager("Budi", 10000000)
joko = VicePresident("Joko", 10000000)
print(isinstance(eko, Karyawan))
print(isinstance(tono, Karyawan))
print(isinstance(budi, Karyawan))
print(isinstance(joko, Karyawan))