Junior — Middle
Ποιες είναι οι βασικές λειτουργίες και εφαρμογές των αφηρημένων κλάσεων στον αντικειμενοστραφή προγραμματισμό;
sobes.tech AI
Απάντηση από AI
Οι αφηρημένες κλάσεις στον αντικειμενοστραφή προγραμματισμό είναι κλάσεις που δεν προορίζονται για άμεση δημιουργία στιγμιότυπων, αλλά χρησιμεύουν ως βασικά πρότυπα για άλλες κλάσεις.
Βασικές λειτουργίες των αφηρημένων κλάσεων:
- Ορισμός κοινής διεπαφής και βασικής συμπεριφοράς για μια ομάδα σχετικών κλάσεων.
- Δυνατότητα δήλωσης αφηρημένων μεθόδων (χωρίς υλοποίηση), που πρέπει να υλοποιηθούν από τις υποκλάσεις.
- Επιτρέπουν την μερική υλοποίηση της λειτουργικότητας που κληρονομούν οι υποκλάσεις.
Εφαρμοστικότητα:
- Όταν χρειάζεται να οριστεί ένας κοινός συμβόλαιο για διαφορετικές υλοποιήσεις.
- Όταν μέρος της λογικής είναι κοινό, και ένα άλλο μέρος πρέπει να υλοποιηθεί στις κληρονόμους.
Παράδειγμα σε Java:
abstract class Animal {
abstract void makeSound(); // αφηρημένη μέθοδος
void breathe() {
System.out.println("Αναπνέει");
}
}
class Dog extends Animal {
void makeSound() {
System.out.println("Γαβ-γαβ");
}
}
Εδώ, το Animal δεν μπορεί να δημιουργηθεί άμεσα, αλλά μπορεί να δημιουργηθεί ένα Dog που υλοποιεί τη μέθοδο makeSound.