Selles artiklis õpite näidete abil oma Kotlini programmis kaasobjekte looma ja kasutama.
Enne kaasobjektide võtmist võtame näite, et pääseda juurde klassi liikmetele.
class Person ( fun callMe() = println("I'm called.") ) fun main(args: Array) ( val p1 = Person() // calling callMe() method using object p1 p1.callMe() )
Siin lõime objekti P1 callMe()
meetodi kutsumiseks . Nii toimivad asjad tavaliselt.
Kuid Kotlinis saate callMe()
meetodi kutsuda ka klassi nime abil, st sel juhul isik. Selleks peate looma kaasobjekti, märkides objekti deklaratsiooni companion
märksõnaga.
Näide: kaasobjektid
class Person ( companion object Test ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Programmi käivitamisel on väljund järgmine:
Mind kutsutakse.
Programmis on testiobjekti deklaratsioon kaaslase objekti loomiseks tähistatud märksõnaga kaaslane. Seega on võimalik callMe()
meetodit kutsuda , kasutades klassi nime järgmiselt:
Person.callMe ()
Kaasobjekti nimi on valikuline ja selle võib välja jätta.
class Person ( // name of the companion object is omitted companion object ( fun callMe() = println("I'm called.") ) ) fun main(args: Array) ( Person.callMe() )
Kui olete Java-ga tuttav, võite seostada kaasobjektid staatiliste meetoditega (kuigi nende sisemine töö on täiesti erinev).
Kaasobjektid pääsevad juurde klassi eraliikmetele. Seega saab neid kasutada tehasemeetodite rakendamiseks.