În acest articol, veți învăța să creați și să utilizați obiecte însoțitoare în programul dvs. Kotlin cu ajutorul exemplelor.
Înainte de a lua despre obiecte însoțitoare, să luăm un exemplu pentru a accesa membrii unei clase.
class Person ( fun callMe() = println("I'm called.") ) fun main(args: Array) ( val p1 = Person() // calling callMe() method using object p1 p1.callMe() )
Aici, am creat un obiect p1 al clasei Person pentru a apela callMe()
metoda. Așa funcționează normal lucrurile.
Cu toate acestea, în Kotlin, puteți apela și callMe()
metodă folosind numele clasei, adică Persoană în acest caz. Pentru aceasta, trebuie să creați un obiect însoțitor marcând declarația obiectului cu companion
cuvânt cheie.
Exemplu: obiecte însoțitoare
class Person ( companion object Test ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Când rulați programul, ieșirea va fi:
Sunt chemat.
În program, declarația obiectului Test este marcată cu cuvânt cheie companion pentru a crea un obiect companion. Prin urmare, este posibil să apelați callMe()
metoda utilizând numele clasei ca:
Person.callMe ()
Numele obiectului însoțitor este opțional și poate fi omis.
class Person ( // name of the companion object is omitted companion object ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Dacă sunteți familiarizat cu Java, puteți asocia obiecte însoțitoare cu metode statice (chiar dacă modul lor de funcționare intern este total diferit).
Obiectele însoțitoare pot accesa membrii privați ai clasei. Prin urmare, ele pot fi utilizate pentru a implementa modelele metodei din fabrică.