Middle
Μπορεί κανείς να δημιουργήσει ένα αντικείμενο μιας αφηρημένης κλάσης στη Java;
sobes.tech AI
Απάντηση από AI
Στην Java, δεν μπορείτε να δημιουργήσετε άμεσα ένα αντικείμενο μιας αφηρημένης κλάσης, καθώς η αφηρημένη κλάση προορίζεται να χρησιμεύσει ως βάση για άλλες κλάσεις και μπορεί να περιέχει αφηρημένες μεθόδους χωρίς υλοποίηση. Ωστόσο, μπορείτε να δημιουργήσετε ένα αντικείμενο μιας ανώνυμης υποκλάσης της αφηρημένης κλάσης, υλοποιώντας όλες τις αφηρημένες μεθόδους στον τόπο.
Παράδειγμα:
abstract class Animal {
abstract void sound();
}
public class Main {
public static void main(String[] args) {
Animal a = new Animal() {
void sound() {
System.out.println("Meow");
}
};
a.sound(); // Θα εμφανίσει "Meow"
}
}
Έτσι, το αντικείμενο δεν δημιουργείται άμεσα από την αφηρημένη κλάση, αλλά από μια ανώνυμη κλάση που την κληρονομεί και υλοποιεί όλες τις αφηρημένες μεθόδους.