Junior
Πώς πραγματοποιείται η ενσωμάτωση στο Kotlin;
sobes.tech AI
Απάντηση από AI
Η ενκασουλάτσια στο Kotlin επιτυγχάνεται μέσω τροποποιητών πρόσβασης και ιδιοτήτων.
Τροποποιητές πρόσβασης:
public: προσβάσιμο από παντού (προεπιλογή).internal: προσβάσιμο εντός του ίδιου module.protected: προσβάσιμο στην ίδια την κλάση και στις υποκλάσεις της.private: προσβάσιμο μόνο εντός της κλάσης όπου δηλώνεται.
Οι ιδιότητες χρησιμοποιούνται για τη διαχείριση της πρόσβασης στα δεδομένα της κλάσης. Μπορούν να έχουν getter και setter, που μπορούν να υπερισχύσουν για να προσθέσουν λογική κατά την ανάγνωση ή την εγγραφή της τιμής.
class Person {
// Ιδιωτικό πεδίο, προσβάσιμο μόνο εντός της κλάσης
private var _name: String = ""
// Ιδιότητα με δημόσιο getter και ιδιωτικό setter
var name: String
get() = _name
private set(value) {
_name = value
}
// Δημόσια λειτουργία για ορισμό ονόματος, ελέγχει την εισαγωγή
fun setName(newName: String) {
if (newName.isNotBlank()) {
name = newName
} else {
println("Το όνομα δεν μπορεί να είναι κενό")
}
}
}
fun main() {
val person = Person()
person.setName("Alice") // Χρησιμοποιούμε τον ελεγχόμενο τρόπο για αλλαγή
println(person.name) // Διαβάζουμε την τιμή μέσω του getter
// person.name = "Bob" // Σφάλμα μεταγλώττισης, ο setter είναι ιδιωτικός
}