Ne postoji način da se izbegne kreiranje objekata u Javi. Kreiranje objekata u Javi zbog strategija alokacije memorije je u većini slučajeva brže od C++ i za sve praktične svrhe u poređenju sa svim ostalim u JVM-u može se smatrati "besplatnim".
Koji su načini da se izbjegne kreiranje objekata u Javi?
U Javi možemo izbjeći kreiranje objekata na 2 načina:
- Činimo klasu apstraktnom, tako da možemo izbjeći nepotrebno kreiranje objekata u istoj klasi i drugoj klasi.
- Učiniti konstruktor privatnim (singleton design pattern), tako da možemo izbjeći kreiranje objekata u drugoj klasi, ali možemo kreirati objekt u nadređenoj klasi.
Da li je kreiranje objekata skupo u Javi?
Svako kreiranje objekta je otprilike skupo kao malloc u C, ili novi u C++, i ne postoji jednostavan način za kreiranje više objekata zajedno, tako da ne možete iskoristiti prednost efikasnosti koju postižete korištenjem grupne alokacije.
Zašto trebamo kreirati objekt u Javi?
Objekti su potrebni u OOP-ovima jer se mogu kreirati za pozivanje nestatičke funkcije koja nije prisutna unutar glavnog metoda, ali je prisutna unutar klase i također daje ime prostorukoji se koristi za pohranjivanje podataka.
Možemo li kreirati objekt bez novog u Javi?
Možete kreirati objekat bez novog putem: Reflection/newInstance, kloniranje i(de)serijalizacija.