Sobes.tech
Junior — Middle

Μπορούν να δηλωθούν μεταβλητές με τροποποιητή ιδιωτικό μέσα σε μια διεπαφή;

sobes.tech AI

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

Στην Java, δεν είναι δυνατόν να δηλώσετε μεταβλητές με τον τροποποιητή private μέσα σε μια διεπαφή. Όλες οι μεταβλητές σε μια διεπαφή είναι από προεπιλογή:

  • public
  • static
  • final

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

Παράδειγμα:

public interface MyInterface {
    int CONSTANT = 10; // public static final από προεπιλογή
}

Αν προσπαθήσετε να δηλώσετε μια μεταβλητή με τον τροποποιητή private μέσα σε μια διεπαφή, ο μεταγλωττιστής θα εμφανίσει σφάλμα.

Από το Java 9 και μετά, μπορούν να δηλωθούν ιδιωτικές μέθοδοι μέσα σε διεπαφές, αλλά όχι ιδιωτικές μεταβλητές.