Kako bismo shvatili kako klase, varijable i metode funkcioniraju u Javi, ključno je razumjeti pojmove statičnosti i nestatičnosti. Nestatični članovi povezani su s određenim instancama klase, dok su statični članovi povezani s klasom. U ovom odjeljku usporedit ćemo statičke i nestatične Java komponente, ističući njihove razlike i potencijalne primjene.
Povezano s
Statički: Statički članovi (varijable i metode) pridruženi su samoj klasi, a ne pojedinačnim instancama.
java varijabla varijabla
Nestatično: Nestatički članovi specifični su za svaku instancu klase jer su vezani za objekte stvorene iz klase.
Dodjela memorije
Statički: Statičkim članovima memorija se dodjeljuje samo jednom, u trenutku učitavanja klase. Dijele se među svim instancama klase.
Nestatično: Nestatičnim članovima memorija je zasebno dodijeljena za svaku instancu klase. Svaki objekt ima vlastitu kopiju nestatičkih članova.
vlc preuzimanje youtube videa
Pristup
Statički: Statičkim članovima može se pristupiti izravno pomoću naziva klase iza kojeg slijedi naziv člana (npr. ClassName.memberName). Dostupni su s bilo kojeg mjesta unutar programa.
Nestatično: Nestatičnim članovima se pristupa pomoću reference objekta iza koje slijedi naziv člana (npr. objectReference.memberName). Oni su specifični za određenu instancu klase.
Inicijalizacija
Statički: Statički članovi se inicijaliziraju kada se klasa učita u memoriju, obično tijekom pokretanja programa. Inicijalizacija se događa samo jednom.
Nestatično: Nestatički članovi se inicijaliziraju kada se kreira svaka instanca klase, obično koristeći novu ključnu riječ. Inicijalizacija se događa zasebno za svaki objekt.
Opseg
Statički: Statički članovi imaju globalni opseg i može im se pristupiti s bilo kojeg mjesta unutar programa, čak i bez stvaranja instance klase.
Nestatično: Nestatički članovi imaju lokalni opseg i može im se pristupiti samo kroz instancu klase. Nisu im dostupni bez stvaranja objekta.
git pull sintaksa
Pristup članovima
Statički: Statički članovi mogu pristupiti samo drugim statičkim članovima unutar iste klase. Ne mogu izravno pristupiti nestatičnim članovima.
Nestatično: Nestatični članovi mogu pristupiti i statičnim i nestatičnim članovima unutar iste klase. Imaju izravan pristup svim članovima.
Korištenje
Statički: Statički članovi se obično koriste za korisne metode, konstante ili varijable koje nisu specifične za pojedinačne instance. Na primjer, klasa Math koja sadrži matematičke funkcije.
multipleksiranje
Nestatično: Nestatički članovi koriste se za ponašanje specifično za instancu, jer sadrže podatke specifične za svaki objekt. Na primjer, varijable instance koje pohranjuju jedinstvene vrijednosti za svaki objekt.
Učinkovitost pamćenja
Statički: Statički članovi troše memoriju samo jednom, bez obzira na broj stvorenih instanci. Oni mogu biti memorijski učinkoviti kada se isti podaci moraju dijeliti među svim objektima.