Institute of Computer Science
  1. Main page
  2. Teeme ise arvutimänge
ET
Log in

Teeme ise arvutimänge

  • Esileht
  • I RAAMAT
  • II RAAMAT
  • III RAAMAT
  • IV RAAMAT
    • Funktsioonid
      • Funktsiooni välja kutsumine
      • Funktsiooni argumendid
      • Funktsiooni töö tulemuse tagastamine
      • Lokaalsed ja globaalsed muutujad
    • Objektid
      • Objekti loomine
      • Objekti algväärtustamine
      • self
      • Miks on objektid head?
      • Näide
    • Mida õppisid?
  • V RAAMAT
  • VI RAAMAT

Objektid

self

Igal pool klassi meetodites on kasutatud sõna self, mida see teeb, mis see on?

Self on üks kaval sõna :-). Asi on nimelt selles, et klassi defineerimine tähendab ainult plaani või joonise tegemist, mille järgi objekte tegema hakatakse. Objekte aga võib olla palju ühesuguseid ainult erineva nimega. Siit tulebki välja vajadus isevärki sõna järele.

Kuidas?

Kui meil on mitu objekti raamatuid, näiteks jutukas, lastekas, romaan vms., siis iga selle objekti jaoks kehtivad täpselt ühed ja samad meetodid, mis on kirjeldatud klassis. Kust programm peab teadma meetodi käima panemisel, millise isendi parameetreid ta peaks muutma? Sellepärast ongi võetud kasutusele lisamuutuja self, mis saab väärtuse objektilt, kes ta välja kutsus. Kui kutsuja on jutukas.avamine(), siis self=jutukas, kui romaan.sulgemine(), siis self=romaan jne.

Muideks muutuja nime self asemel võib tegelikult kasutada mistahes sõna, kuid jällegi, tasub hoida kinni traditsioonidest, sest see muudab teiste koodi lugemise ja sinu koodi lugemise palju arusaadavamaks.

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment