-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclass.py
More file actions
90 lines (58 loc) · 1.85 KB
/
class.py
File metadata and controls
90 lines (58 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
class Person:
__total = 0
def __init__(self, name, age, address): # this di js
self.nama = name
self.umur = age
self.role = "user"
# private attribute
self.__address = address
def get_address(self):
return f"address : {self.__address}"
def set_address(self, new_address):
self.__address = new_address
# private method
def __name(self):
return self.nama
def private_method(self):
return self.__name()
def greeting(self):
return f'hello, {self.nama}'
def private_variable(self):
return f"total orang : {Person.__total}"
def __str__(self):
return f"name: {self.nama}, umur : {self.umur}, role : {self.role}"
class Student(Person):
def __init__(self, name,age, address, batch):
super(Student, self).__init__(name, age, address)
self.batch = batch
# def greeting(self):
# return f'hello, {self.nama}, dari batch {self.batch}'
def greeting(self):
return super(Student, self).greeting()
def __str__(self):
return f"name: {self.nama}, umur : {self.umur}, role : {self.role}, batch: {self.batch}"
p1 = Person('pratama', 23, 'malang')
s1 = Student('pratama', 23, 'malang', 'excellent echo')
print(p1)
print(s1)
# print(p1.greeting())
# print(s1.greeting())
# person1 = Person('pratama', 23, "jember")
# print(person1.__address)
# person1.set_address('malang')
# print(person1.get_address())
# print(person1.private_method())
# print(person1.private_variable())
# print(person1.nama)
# print(person1.umur)
# print(person1.greeting())
# print(Person.total)
# encapsulation
# class Car:
# turbo_speed = 140
# def __init__ (self,km):
# self.km = km
# def count_hour(self):
# return Car.turbo_speed / self.km
# car1 = Car(100)
# print(car1.count_hour())