Sobes.tech
Junior

Milliseid valdkondi (scope) saab kasutada igas rakenduses?

sobes.tech AI

Vastus AI-lt

  • Kohalik ulatus (Local Scope): Muutujaid, mis on deklareeritud meetodi, konstruktor või ploki ({}) sees. Saadaval ainult selles plokis.
  • Näidise ulatus (Instance Scope): Klassiliikme muutujad (mitte statilised). Kuuluvad konkreetsele klassi objektile ja on kättesaadavad selle meetodite kaudu.
  • Klassi/statilise ulatuse (Class/Static Scope): Klassiliikme muutujad, mis on deklareeritud võtmesõnaga static. Kuuluvad otse klassile, mitte konkreetsele objektile, ja on kättesaadavad otse klassi nime järgi.
  • Paki ulatus (Package Scope): Klassiliikmed (muutujad, meetodid, konstruktorid) ilma selge juurdepääsurežiimita (public, protected, private). Saadaval kõigile sama paketi klassidele.

Need ulatuse valdkonnad on Java SE jaoks põhialused ja kehtivad kõigi Java rakenduste (konsol, Web, Desktop jne) puhul.

Veebirakenduste kontekstis (näiteks Springi, Jakarta EE/Java EE kasutamisel) kasutatakse ka täiendavaid ulatuse valdkondi:

  • Päringu ulatus (Request Scope): Objektid, mis on seotud ühe HTTP-päringuga.
  • Sessiooni ulatus (Session Scope): Objektid, mis on seotud kasutaja sessiooniga.
  • Rakenduse ulatus (Application Scope): Objekti, mis on kogu veebirakenduses kättesaadav.