Junior — Middle
Μπορούν να δηλωθούν μεταβλητές με τροποποιητή ιδιωτικό μέσα σε μια διεπαφή;
sobes.tech AI
Απάντηση από AI
Στην Java, δεν είναι δυνατόν να δηλώσετε μεταβλητές με τον τροποποιητή private μέσα σε μια διεπαφή. Όλες οι μεταβλητές σε μια διεπαφή είναι από προεπιλογή:
- public
- static
- final
Δηλαδή, είναι στην ουσία σταθερές προσβάσιμες σε όλους όσους χρησιμοποιούν τη διεπαφή.
Παράδειγμα:
public interface MyInterface {
int CONSTANT = 10; // public static final από προεπιλογή
}
Αν προσπαθήσετε να δηλώσετε μια μεταβλητή με τον τροποποιητή private μέσα σε μια διεπαφή, ο μεταγλωττιστής θα εμφανίσει σφάλμα.
Από το Java 9 και μετά, μπορούν να δηλωθούν ιδιωτικές μέθοδοι μέσα σε διεπαφές, αλλά όχι ιδιωτικές μεταβλητές.