Sobes.tech
Junior — Middle

Μπορεί να οριστούν πολλαπλοί κατασκευαστές με την ίδια υπογραφή σε μια κλάση;

sobes.tech AI

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

Όχι, στη Java δεν είναι δυνατόν να οριστούν πολλαπλοί κατασκευαστές με την ίδια υπογραφή σε μια κλάση.

Η υπογραφή του κατασκευαστή περιλαμβάνει τους τύπους και τη σειρά των παραμέτρων. Αν δύο κατασκευαστές έχουν τους ίδιους τύπους παραμέτρων με την ίδια σειρά, ο μεταγλωττιστής θα εμφανίσει σφάλμα λόγω ασάφειας.

Για παράδειγμα, ο ακόλουθος κώδικας θα προκαλέσει σφάλμα:

public class Example {
    public Example(int a, String b) {}
    public Example(int x, String y) {} // Σφάλμα: διπλή υπογραφή
}

Για την υπερφόρτωση κατασκευαστών, οι υπογραφές τους πρέπει να διαφέρουν στον αριθμό ή στους τύπους των παραμέτρων.