Η γλώσσα Python υποστηρίζει το πρότυπο τού αντικειμενοστραφούς προγραμματισμού. Μπορούμε να δημιουργήσουμε τις δικές μας κλάσεις και να παράγουμε τα δικά μας αντικείμενα πολύ εύκολα.
class AClass():
pass
A1=AClass()
A2=AClass()
print(A1)
print(A2)
Στο προηγούμενο παράδειγμα ορίσαμε μια κλάση “AClass” η οποία δεν κάνει απολύτως τίποτα. Έπειτα ορίσαμε δύο αντικείμενα από την κλάση ‘A1=AClass()’ και ‘A2=AClass()’ και τέλος τα εμφανίσαμε στην οθόνη τού υπολογιστή μας με τις προτάσεις ‘print(A1) print(A2)’.
Κατασκευαστής (Constructor).
Κάθε φορά που κατασκευάζουμε ένα αντικείμενο καλείται ο κατασκευαστής τής κλάσης. Ο κατασκευαστής τής κλάσης είναι η μέθοδος ‘__init__(self,parameters)’. Με την μέθοδο αυτή αρχικοποιούμε τις ιδιότητες τού αντικειμένου που κατασκευάζουμε. Ο κατασκευαστής είναι πολύ σημαντικός στον αντικειμενοστραφή προγραμματισμό αφού με την βοήθειά του καθορίζουμε τις αρχικές ιδιότητες τού αντικειμένου.
class Person():
def __init__(self,name,surname,salary):
self.name=name
self.surname=surname
self.salary=salary
def getName(self):
return self.name
def getSurname(self):
return self.surname
def getSalary(self):
return self.salary
def setName(self,name):
self.name=name
def setSurname(self,surname):
self.surname=surname
def setSalary(self,salary):
self.salary=salary
def printMe(self):
print('============')
print('Name: ',self.name)
print('Surname: ',self.surname)
print('Salary: ',self.salary)
print('============')
P1=Person('kostas','papas',1200)
P2=Person('takis','paras',1300)
print(P1.name)
print(P1.surname)
print(P1.salary)
P1.printMe()
P2.printMe()
Στο προηγούμενο παράδειγμα ορίζουμε μια νέα κλάση ‘Person’. Στον κατασκευαστή τής κλάσης ορίζουμε κι αρχικοποιούμε τις ιδιότητες ‘name, surname, salary’. Έτσι, κάθε νέο αντικείμενο τής κλάσης θα έχει αυτές τις ιδιότητες. Έπειτα, δημιουργούμε τις μεθόδους ‘setX’, ‘getX’. Με τις μεθόδους ”setX” γράφουμε το περιεχόμενο της ιδιότητας ‘Χ’ και με τις μεθόδους ‘getX’ επιστρέφουμε το περιεχόμενο τής ιδιότητας ‘Χ’. Παρά το γεγονός ότι οι ιδιότητες κάθε κλάσης που δημιουργούμε στην Python είναι άμεσα προσβάσιμες από τον χρήστη, είναια μια καλή πρακτική να δημιουργούμε τις αντίστοιχες μεθόδους πρόσβασης προκειμένου να αυξάνουμε την ασφάλεια τού κώδικα και αποφεύγουμε την κατά λάθος δημιουργία νέων ιδιοτήτων. Τέλος, δημιουργούμε μια νέα μέθοδο ‘printMe(self)’ με την οποία μπορούμε να εμφανίζουμε στην οθόνη τού υπολογιστή τα περιεχόμενα τών ιδιοτήτων τών αντικειμένων που δημιουργούμε.