Junior
Mida tähendab 'static' märksõna Java-s?
sobes.tech AI
Vastus AI-lt
static Java-s kasutatakse elementide, mis kuuluvad klassile, mitte konkreetsele objekti eksemplarile, deklareerimiseks.
Võtmesõna võib rakendada:
- Muutujatele (väljadele):
- Üks eksemplar muutuja olemas kogu klassi ulatuses, sõltumata loodud eksemplaride arvust.
- Sellele saab ligi klassi nime kaudu (näiteks
ClassName.staticVariable).
// Näide staatilisest muutujast public class MyMath { public static final double PI = 3.14159; // Juurdepääs: MyMath.PI } - Meetoditele:
- Meetod kuulub klassile, mitte konkreetsele objektile.
- Seda saab kutsuda klassi nime kaudu (näiteks
ClassName.staticMethod()). - Ei pääse ligi mitte-staatilistele klassi liikmetele (muutujad või meetodid), kuna need on seotud eksemplariga.
// Näide staatilisest meetodist public class Calculator { public static int add(int a, int b) { return a + b; } // Kutsumine: Calculator.add(5, 3) } - Initsialiseerimisblokid:
- Täidetakse üks kord klassi laadimisel JVM-i.
- Kasutatakse staatiliste väljade initsialiseerimiseks või muude klassiga seotud tegevuste teostamiseks.
// Näide staatilisest blokist public class DataInitializer { static { // Kood, mis täidetakse klassi laadimisel System.out.println("DataInitializer klass laaditud."); } } - Sisemised/nested klassid:
- Staatiline sisemine klass käitub nagu tavaline kõrgema taseme klass, välja arvatud see, et see asub teise klassi sees.
- Ei nõua välise klassi eksemplari loomist selle kasutamiseks.
- Omab juurdepääsu ainult välise klassi staatilistele liikmetele.
// Näide staatilisest sisemisest klassist public class OuterClass { static class StaticInnerClass { // Staatilise sisemise klassi väljad ja meetodid } } // Juurdepääs: OuterClass.StaticInnerClass inner = new OuterClass.StaticInnerClass();
static kasutamine aitab luua utiliidiklassid, hoida ühiseid andmeid ja hallata olekut klassi tasandil.