Ενότητα 7 - Τμήμα 1 - Κλάσεις
Ενότητα 7 - Τμήμα 1 - Κλάσεις
- εντοπίζουν μια κλάση μέσα στον κώδικα της Python
- παρουσιάζουν τα απαραίτητα μέρη για την κατασκευή μιας κλάσης
- δημιουργούν μια απλή κλάση
- δημιουργούν και να χρησιμοποιούν μεθόδους σε μια κλαση
- διακρίνουν τις αναφορές από τα αντικείμενα μιας κλάσης
- εμπλουτίζουν τον κώδικα των κλάσεων για την υλοποιούν κατασκευαστές
7.1.2 - Δημιουργία μίας κλάσης
Για να δημιουργήσουμε μία κλάση πρέπει να την ορίσουμε, με τον ίδιο τρόπο όπως με μία συνάρτηση. Τα ονόματα των κλάσεων πάντα αρχίζουν με κεφαλαίο γράμμα αντίθετα με τις συναρτήσεις. Ενώ είναι δυνατό να αρχίζει το όνομα μίας κλάσης με μικρό γράμμα, δεν θεωρείτε καλή πρακτική.
Αντιγράψτε τον παρακάτω κώδικα στο Thonny και αποθηκεύστε το αρχείο σαν animals στον φάκελλο με τις εργασίες σας.
class Animal():
""" This is a class that represents animals in a game. """
def __init__(self):
""" Set up the animals fields. """
self.name = ""
self.type = ""
self.color = ""
self.legs = ""
self.speed = ""
Η def __init__(self) είναι μία ειδική συνάρτηση που ονομάζεται κατασκευαστής (constructor) και τρέχει αυτόματα μόλις η κλάση δημιουργηθεί.
Το self. (τον εαυτό μου) είναι ένα είδος σαν την αντωνυμία δικό μου (my). Μέσα στην κλάση Animal μιλάμε για το δικό μου όνομα, δικό μου τύπο, χρώμα κλπ.
Προσθέστε των κώδικα που ακολουθεί μέσα στο πρόγραμμα που έχουμε γράψει στο Thonny μετά τη γραμμή 10 προσέχοντας τη στοίχιση της εσοχής.
# Create an animal
shawn = Animal()
#shawn's attributes
shawn.name="Shawn"
shawn.type="sheep"
shawn.color="white"
shawn.legs=4
shawn.speed=50
# Create another animal
kitty = Animal()
#kitty's attributes
kitty.name="Kitty"
kitty.type="cat"
kitty.color="orange"
kitty.legs=4
kitty.speed=24
Με τον παραπάνω κώδικα, μετά τη δημιουργία της κλάσης Animal, δημιουργήσαμε δύο ζώα - στιγμιότυπα της κλάσης animals, ένα πρόβατο και μία γάτα. Αυτά τα δύο στιγμιότυπα ονομάζονται Αντικείμενα. Ως ένα απλό ορισμό μπορούμε να πούμε ότι Αντικείμενο είναι ένα στιγμιότυπο μίας κλάσης.
Για να οπτικοποιήσετε την εκτέλεση αυτού του κώδικα πατήστε εδώ (www.pythontutor.com)