Sobes.tech
Junior

Ποια είναι οι βασικές αρχές της αντικειμενοστραφούς προγραμματισμού (ΑΠ);

sobes.tech AI

Απάντηση από AI

Βασικές αρχές του αντικειμενοστραφούς προγραμματισμού (ΟΟΠ):

  1. Ενθυλάκωση — συνένωση δεδομένων και μεθόδων που λειτουργούν με αυτά τα δεδομένα σε ένα ενιαίο αντικείμενο. Αυτό επιτρέπει την απόκρυψη της εσωτερικής υλοποίησης και την προστασία των δεδομένων από άμεση πρόσβαση από έξω.

  2. Κληρονομικότητα — μηχανισμός που επιτρέπει τη δημιουργία νέων κλάσεων με βάση υπάρχουσες, κληρονομώντας τις ιδιότητες και τις μεθόδους τους, προάγοντας την επανάχρηση κώδικα.

  3. Πολυμορφισμός — η ικανότητα αντικειμένων διαφορετικών κλάσεων να ανταποκρίνονται διαφορετικά στα ίδια μηνύματα (κλήσεις μεθόδων), διευκολύνοντας την επέκταση και τη συντήρηση του κώδικα.

  4. Αφηρημένη — η ανάδειξη των ουσιωδών χαρακτηριστικών ενός αντικειμένου, κρύβοντας τις λεπτομέρειες υλοποίησης, επιτρέποντας την εργασία με αντικείμενα σε υψηλότερο επίπεδο.

Παράδειγμα σε C#:

// Αφηρημένη κλάση
abstract class Animal
{
    public abstract void Speak();
}

// Κληρονομικότητα και πολυμορφισμός
class Dog : Animal
{
    public override void Speak() => Console.WriteLine("Γαβ-γαβ");
}

class Cat : Animal
{
    public override void Speak() => Console.WriteLine("Μιαου");
}

// Χρήση
Animal myDog = new Dog();
Animal myCat = new Cat();
myDog.Speak(); // Γαβ-γαβ
myCat.Speak(); // Μιαου

Εδώ, η ενθυλάκωση διασφαλίζεται από τις κλάσεις, η κληρονομικότητα — από τις κλάσεις Dog και Cat από την Animal, ο πολυμορφισμός — από διαφορετικές υλοποιήσεις της μεθόδου Speak, και η αφαιρετικότητα — από την αφηρημένη κλάση Animal.